代码改变世界

undefined reference to XXXX

2015-10-22 15:36  放作夥  阅读(570)  评论(0编辑  收藏  举报

今天帮忙编译某个东西时,提示undefined reference to XXXX。这个错误是链接器的错误,查了半天,唯一一个比较像的线索就是库的依赖顺序。

 

后来看到有人说把链接选项打两遍,比如gcc `pkg-config --cflags --libs gtk+-2.0 libusb-1.0` xx.c -o xx  `pkg-config --cflags --libs gtk+-2.0 libusb-1.0`,居然就神奇的通过了。

 

想想也有道理,如果真的跟链接顺序有关,那么这样写就是对称的,万一有依赖顺序相反了,就会增加一个方向依赖,避免问题。