Rég*_* B. 7 c++ cmake clang ld
我正在尝试使用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
Run Code Online (Sandbox Code Playgroud)
ld然后抱怨以下消息:
/usr/bin/ld: cannot find -lmylib
Run Code Online (Sandbox Code Playgroud)
每当我手动添加时,上面的链接命令运行正常-L/my/dir/
.有没有指定-L
标志链接的方法?
在$LD_LIBRARY_PATH
环境变量(和其它基于UNIX的平台上的各种替代方案)用于在运行时,不链接时,发现库.
使用-L
是正确的方法,无法避免.
注意:在Linux下更好的方法(你没有指定你的平台,所以我猜)是正确配置文件/etc/ld.so.conf.d/
并避免$LD_LIBRARY_PATH
完全使用.
归档时间: |
|
查看次数: |
12996 次 |
最近记录: |