在windows平台上,我们可以将Qt程序和依赖的动态库打包到一起独立运行。这种方式虽然使安装包的体积变大了,但也简化了打包流程,使得执行程序更加独立自主,不再依赖系统库。
在Linux下我们也可以采用同样的方案进行处理。采用AppImage格式,我们可以将程序运行所需的所有依赖库打包到执行程序中,这样一来不管系统库怎样变化,我们的执行程序都不会受到影响。
AppImage是一种包含程序运行所需所有依赖库的文件格式。AppImage文件其实是一个镜像文件,当你运行AppImage程序的时候镜像文件就会被装载。AppImage文件本身是只读的,可以独立的运行在系统沙盒当中。
在AppImage文件打包的时候,我们先使用Linuxdeployqt提取程序的依赖库,由于Linuxdeployqt不是Qt官方的工具,我们需要自己下载安装。项目的地址如下:
在提取依赖库之前,首先我们配置一下Qt程序的安装目录,确保通过脚本将编译好的可执行程序安装到对应的目录下。
//配置对应的可执行文件
linux{
target.path = $$_PRO_FILE_PWD_/../dist/Desktop-linux/root/usr/bin/
IN