![](/img/trans.png)
[英]“No such file or directory” linker error, LD_LIBRARY_PATH set correctly
[英]Clang linker does not look into LD_LIBRARY_PATH
我正在嘗試使用clang(3.0)構建和鏈接基於C ++,cmake的項目。 此項目鏈接到安裝在自定義目錄/ my / dir /中的多個庫。 該目錄包含在LD_LIBRARY_PATH和LIBRARY_PATH環境變量中。 項目使用g ++構建和鏈接。
由cmake生成並執行的鏈接命令如下所示:
/usr/bin/clang++ -O3 stuff.cpp.o -o stuff -rdynamic -lmylib
ld然后抱怨以下消息:
/usr/bin/ld: cannot find -lmylib
每當我手動添加-L/my/dir/
時,上面的鏈接命令就可以正常運行。 有沒有指定-L
標志鏈接的方法?
$LD_LIBRARY_PATH
環境變量(及其在其他基於UNIX的平台上的各種替代方案)在運行時使用 ,而不是鏈接時 ,用於查找庫。
使用-L
是正確的方法,無法避免。
注意:在Linux下更好的方法(你沒有指定你的平台,所以我猜)是在/etc/ld.so.conf.d/
正確配置文件,並避免使用$LD_LIBRARY_PATH
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.