关于make链接时找不到文件的问题。
- 编译好外部库,写CmakeLists.txt
- 如果外部库没放在默认路径下,则会在make时遇到
/usr/bin/ld: 找不到 -lXXXX: 没有那个文件或目录
(其中XXXX自然就是库名,linux下库文件名遵循固定格式libXXXX.so/.a
) - 利用
ld -lXXXX --verbose
查看搜索信息 - 解决方案:
export LD_LIBRARY_PATH=/path/to/your/lib
,但有可能抽风不生效(原因暂时未知)- 动态库也可以
export LD_PRELOAD=...
- 调配置文件
/etc/ld.so.conf
- 最暴力的方法:看
ld -XXXX --verbose
指向那些路径,然后ls -s
把缺的链接库软链接过去(当然,复制过去肯定也行)
ref