2010-11-05 83 views
1

您好我在eclipse和netbeans中都有这个错误,我有mydynamiclib.so文件,当我将它添加到eclipse或netbeans并尝试构建时,我得到这个错误netbeans :错误/ usr/bin/ld:无法找到-lmylibrary

collect2:LD返回1退出状态

化妆[2]:* [测距/调试/ GNU Linux的-86/MYAPP]错误1

在/ usr/bin中/ ld:找不到-lmydynamiclib

我使用的是最新的(Ubuntu的10.10,NetBeans中,蚀)

+0

它是“mylibrary”还是“mydynamiclib”? – 2010-11-05 06:28:21

+0

对不起编辑它,它是mydynamiclib – 2010-11-05 06:38:33

回答

1

需要libmydynamiclib.a文件 还有.so文件,你应该告诉LD或GCC在哪里可以找到它。

例如gcc -o myapp -L/path/to/lib -lmydynamiclib

其中libmydynamiclib.so位于/ path/to/lib中。

否则,请不要链接库,而是使用dlopen()动态加载它。请参阅dlopen()手册页。

0

版本的链接器无法找到共享库在它的搜索路径。如果将共享库所在的目录添加到LD_LIBRARY_PATH环境变量中,则链接程序应该找到它并能够链接它。