Linux 下QT程序打包

 

备注:通过对网上很多打包方法的测试,发现都存在或多或少的不尽人意的地方。本次,笔者采用linuxqt+appimage 进行打包,这样的好处不言而喻,打包后生成的是Image,这意味着对部署环境没有依赖,不需要安装配置库文件,只要打包没问题,在别的应用环境中是很好部署的。

一、环境搭建:

准备linuxdeployqt   patchelf    appimagetool三个工具,后面会用到。

1.下载linuxdeployqt:最简单的方法直接下载编译好的 linuxdeployqt-x86_64.AppImage文件,将其改名字为linuxdeployqt,并用chmod a+x添加权限,然后复制到 /usr/local/bin/。然后命令行输入 linuxdelpoyqt –version,输出linuxdeployqt 版本就安装成功。

linuxdeployqt-x86_64.AppImage 下载地址,https://github.com/probonopd/linuxdeployqt/releases

 

2.patchelf

下载地址:https://nixos.org/releases/patchelf/patchelf-0.9/patchelf-0.9.tar.gz

 

可参考以下博客中的下载和环境搭建方法。

https://blog.csdn.net/u014746574/article/details/79288727

https://blog.csdn.net/kuer1379/article/details/82885810

https://blog.csdn.net/bkbliu/article/details/88090465

二、打包流程:

1.创建一个文件夹,名字可随意,最好起一个有意义的名字,比如“out”,“output”等。作为打包操作的根目录。

2.将需要打包的工程进行编译,选择“release”版本,切记。将生成的可执行文件拷贝到打包根目录;

3.执行“linuxdeployqt +可执行程序名字”;如图所示;

 

4.在“out”目录下,再创建两个文件,一个是应用程序的logo文件,比如“logo.png”,另一个叫“可执行文件名字.desktop”,比如需要打包的可执行文件名叫“robotcontrol”,那么,打包文件名字就必须叫“robotcontrol.desktop”.

5.创建一个图标文件,命名为“logo.png”,再创建一个桌面文件,robotcontrol_ex.desktop,对于桌面文件,需配置的内容较固定,可拷贝一个别的打包工程中的桌面文件,然后改名即可。下面是文件内容:

 

其中,type项表示打包程序的类型,比如我们打包的应用程序为可执行程序,一般配置为“Application”,

Name 和Exec为可执行程序的名字,Comment是一个注释说明内容。根据自己实际情况填写,一般要填写的有意义。,Icon 指的是应用的图标文件名,但不要带文件后缀和引号。

Categories指的是应用程序的种类,一般不需要修改。

Terimal项指示打包后的应用程序是否支持在控制台运行。

6.在打包的根目录中,执行“cd ..”,执行生成image命令:appimagetool + 打包根目录,如图,见到“success”则执行成功。

7.在out 同级目录下,可以看到以可执行程序名字命名的.appimage 文件,即为最终生成的可执行镜像文件,拷贝到别的电脑进行验证,大功告成。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值