嗨,我在eclipse和netbeans都有这个错误,我有mydynamiclib.so文件,当我把它添加到eclipse或netbeans并尝试构建我得到这个错误netbeans:
collect2:ld返回1退出状态make [2]:* [dist / Debug / GNU-Linux-x86 / myapp]错误1 / usr / bin / ld:找不到-lmydynamiclib
我正在使用最新版本(ubuntu 10.10,netbeans,eclipse)
你需要libmydynamiclib.a文件以及.so文件,你应该告诉ld或gcc在哪里找到它 .
例如 gcc -o myapp -L/path/to/lib -lmydynamiclib
gcc -o myapp -L/path/to/lib -lmydynamiclib
其中libmydynamiclib.so位于/ path / to / lib中 .
否则,不要链接库,但使用dlopen()动态加载它 . 请参阅dlopen()联机帮助页 .
链接器可以't find your shared library in it'的搜索路径 . 如果将共享库所在的目录添加到 LD_LIBRARY_PATH 环境变量,链接器应该找到它并能够链接它 .
LD_LIBRARY_PATH
2 回答
你需要libmydynamiclib.a文件以及.so文件,你应该告诉ld或gcc在哪里找到它 .
例如
gcc -o myapp -L/path/to/lib -lmydynamiclib
其中libmydynamiclib.so位于/ path / to / lib中 .
否则,不要链接库,但使用dlopen()动态加载它 . 请参阅dlopen()联机帮助页 .
链接器可以't find your shared library in it'的搜索路径 . 如果将共享库所在的目录添加到
LD_LIBRARY_PATH
环境变量,链接器应该找到它并能够链接它 .