环境:银河麒麟4.0.2
Qt:5.12.10
将编译好的Qt程序test打包,并部署到另一台没有开发环境的Linux下,将过程记录如下:
将编译好的可执行程序test放到一个新建文件夹内(例如:/home/test/package);
在此文件夹中终端执行:ldd ./test,查看test的依赖库;
将所依赖的库一个一个的拷贝到当前test文件夹中
包含数据库额库
cp 依赖库全路径当前目录
cp /opt/Qt5.12.10/5.12.10/gcc_64/lib/libQt5Core.so.5.12.10/home/test/package
注:ldd下查看的依赖库为:libQt5Core.so.5,找到其目录查看这个库的性质为链接库,应该拷贝其对应的共享库,一般都是libQt5Core.so.5.12.5,即Qt对应的版本号的库。
复制plugins下的platforms文件夹到/home/test/package下。
在Qt5.12.10/lib下复制libQt5DBus.so.5.12.10和libQt5XcbQpa.so.5.12.10到/home/test/package下
执行命令:
ln -s home/test/package/libQt5DBus.so.5.12.10 libQt5DBus.so.5 生成其链接库
ln -s home/test/package/libQt5XcbQpa.so.5.12.10libQt5XcbQpa.so.5,生成它链接库;
在/etc/ld.so.conf.d/下创建新的配置文件,并添加环境变量:
执行命令:vim test.conf (首先su获取管理员权限)
文件内容:package文件夹的全路径,例如:/home/test/package
Esc 推出编辑模式,:wq!推出并保存
ldconfig使文件生效
此时,双击可执行程序test,就可运行了