我有代碼塊中一個非常基本的C++項目,該項目利用了glfw.so
和兩塊編譯從另一個項目,libHorde3D.so
和libHorde3DUtils.so
.so文件其他庫。後者放在項目根文件夾中,而glfw在我的/usr/lib
(我認爲)中的某處。代碼塊無法找到共享庫,即使搜索路徑設置
我已經將項目文件夾添加到代碼塊中的鏈接器和編譯器搜索路徑。我已將libHorde3D.so
和libHorde3DUtils.so
以及glfw.so
添加到鏈接程序設置選項卡中的鏈接庫。我認爲這將足夠基於以上類似的問題在這裏stackoverflow。
然而,當我按建:
ld cannot find -lHorde3D.so
ld cannot find -lHorde3DUtils.so
ld cannot find -lglfw.so
我的系統是Arch Linux的64和我使用的GCC。 我也試過在/usr/lib
和/usr/lib64
上覆制libHorde3D.so
和libHorde3DUtils.so
,但沒有成功。
P.S.所有搜索路徑都將複製到調試和發佈目標中。
你不應該把「.so」作爲鏈接標誌。使用它就像-llibrary .. – Aftnix 2012-07-24 14:33:06
備註:設置CodeBlocks選項以在項目構建期間顯示完整的命令行,這有助於解決此類問題。 – 2012-07-24 14:33:49