在A环境下编译的Qt程序,放到B环境下未编译直接运行后出现了
libQt5NetWork.so.5:version 'Qt_5'not found
libQt5Gui.so.5:version 'Qt_5'not found
libQt5Core.so.5:version 'Qt_5'not found
libQt5Widget.so.5:version 'Qt_5'not found
这样的报错,百度了之后发现是动态库链接的问题...
打开程序里的Makefile发现其链接的路径是A环境下的Qt的路径...通过更改LD_LIBRARY_PATH变量解决这个问题:
export LD_LIBRARY_PATH=/usr/home/ll/Qt5.7.0/5.7/gcc_64/lib/ 后再启动程序,程序正常运行.. //这里的路径是我自己QT的安装路径
但这个方法只能更改一次,每次重启之后就没用了,之后又查了下在自己/home/用户名/下存在.bashrc文件,用ls -a可见
在其最后行加上
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/home/ll/Qt5.7.0/5.7/gcc_64/lib/
保存退出,reboot重启后生效