g++编译时链接指定路径下的指定库

若我们在编译我们的cpp文件时找不到指定库,可以通过以下方法解决:

直接指定

g++ test.cpp -l$lib \
             -L$PATH \
             -I$include \
             -Wl,-rpath=$rpath 

如上 -l后跟so名称,-L跟so路径,-I跟头文件路径,最后的Wl,-rpath=跟so依赖的so路径,即规定递归查找的路径。

添加环境变量

通过export添加环境变量:

export LD_LIBRARY_PATH="$path:$LD_LIBRARY_PATH"

以上只是临时方案,可以通过source ~/.bashrc的方式变成永久的

vi ~/.bashrc
#在末尾加上:
export LD_LIBRARY_PATH="$path:$LD_LIBRARY_PATH"
source ~/.bashrc

运行可执行文件时链接库

LD_LIBRARY_PATH=“ p a t h : path: LD_LIBRARY_PATH” apps

发布了27 篇原创文章 · 获赞 6 · 访问量 4905

猜你喜欢

转载自blog.csdn.net/weixin_42107987/article/details/104631331
今日推荐