我把我的ubuntu从11.04升级到11.10。在11.04这一切都很好:

 gcc -fopenmp -g -c -o test.o test.c -I../include
 gcc -fopenmp -g -o test test.o -lnuma -lm -L../myLib -lmyL

但现在,在11.10中,它给出了以下错误:
 ../myLib/libmyL.a (get.o): In function 'get':
 get.c:(.text+0xa5): undefined reference to `mbind'

其中mbindhttp://www.kernel.org/doc/man-pages/online/pages/man2/mbind.2.html
你能帮我解决这个问题吗?或者至少告诉我出了什么问题?谢谢。

最佳答案

-lnuma移动到链接行中的库之后,这将有助于解决依赖关系,因为当您首先将它放在链接行上时,链接器会将其删除,因为它目前为止不需要它。
哦,在回答你可能的后续问题时,是的,你可以创建循环依赖项,不,它们修复起来并不有趣:-)

关于linux - 未定义对mbind的引用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12469421/

10-10 18:14