问题描述:makefile中已经指定了库的路径和库的名字,编译时没报错,但程序运行时会报找不到库文件的错误。
这里写图片描述
这里写图片描述
解决办法:
gcc中加上-Wl,-rpath=.
这里写图片描述
为什么?
gcc -L选项在链接时指定动态库路径,编译通过,但是执行时会找不到路径;
gcc -Wl -rpath选项在运行时指定路径,运行时按照指定路径寻找动态库;
也就是说处理动态链接库时有2个路径:链接时路径和运行时路径,2个路径是分开的。
————————————————
版权声明:本文为CSDN博主「alw_123」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/alw_123/article/details/78010524