2010-11-05 55 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環境變量中,則鏈接程序應該找到它並能夠鏈接它。