在调试中遇到一个问题,当我使用LD_LIBRARY_PATH指定库目录时,老是发现程序运行过程中找不到动态库,经过一番查找终于发现原来是自己的一个习惯所致:
我指定LD_LIBRARY_PATH环境变量时使用的方法是LD_LIBRARY_PATH=xxxxx,没有使用export LD_LIBRARY_PATH=xxxxx,因为之前这样修改PATH环境变量都是可以的,问题其实就在这里,PATH是在LINUX环境变量中默认已经定义了的,LD_LIBRARY_PATH却没有,所以使用LD_LIBRARY_PATH=xxxxx第一次定义的LD_LIBRARY_PATH环境变量在shell环境中后续程序中是不能获得的,当然程序也就找不到指定的动态库咯!
本文介绍了在Linux环境下正确设置LD_LIBRARY_PATH环境变量的方法。作者通过实际案例解释了为何直接使用LD_LIBRARY_PATH=xxxxx的方式会导致程序无法找到指定的动态库,并给出了正确的做法:应当使用export LD_LIBRARY_PATH=xxxxx来确保环境变量在shell会话中的持久性。
1075

被折叠的 条评论
为什么被折叠?



