簡體   English   中英

Clang鏈接器不會查看LD_LIBRARY_PATH

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM