1、先安装linuxployqt
2、准备图片,新建文件夹test,将QT的开发好的应用程序testApp 拷贝到test路径下,在网上找好test.png图片,重命名成testApp.png;并将testApp.png图片也拷贝到test路径下。
3、生成应用,执行命令:
linuxployqt testApp -appimage
完成后目录下将会生成AppRun、doc、plugins...default.desktop等一系列文件及文件夹。
4、测试,将test文件夹拷贝到其他要运行程序的电脑,直接执行AppRun就可以运行程序(./AppRun)。
5、生成桌面图标,将default.desktop重命名成testApp.desktop。编辑testApp.desktop内容如下:
[Desktop Entry]
Type=Application
Name=testApp
Exec=/home/xx/test/testApp
Icon=/opt/test/testApp.png
Comment= info
Terminal=false
6、测试快捷方式,将修改好后的testApp.desktop文件拷贝至桌面及~/.local/share/applications/路径下,并赋给可执行权限。桌面上的testApp.desktop双击打开(或者右键打开),提示可执行信息时,确认后该文件将变成testApp.png的桌面图标。此后就可以通过双击图标运行程序了。
7、发布成deb文件:
①在~路径下创建文件夹deb
mkdir ~/deb
②在deb路径下创建usr/src目录,且将testApp文件夹及其内容拷贝到usr/src下,该目录usr/src会映射到后续deb文件安装的具体路径
mkdir -p usr/src
cp -a ~/test/testApp ~/deb/usr/src/
③在deb路径下创建DEBIAN,且在DEBIAN下创建control文件。将control文件内容编辑如下
package: testapp
Version: 1.0.0
Section: utils
Priority: optional
Architechture: i386
Depends:
Installed-Size: 512
Maintainer: xx
Description: testapp-deb
注意第一行的内容:package:的内容必须是小写,且不能有下划线,可以使用中划线和点等符号
④执行打包命令
dpkg -b . ~/testapp-1.0.0_i386.deb
⑤此时在/home/xx/路径下就可以生成testapp-1.0.0_i386.deb文件,将此应用文件发送到其他电脑上。执行安装目录,成功安装后可以在安装电脑的/usr/src/下发现testApp的文件,注意以下命令需要权限
sudo dpkg -i testapp-1.0.0-i386.deb
⑥卸载命令,注意卸载时候包名是control文件的package:字段内容。
sudo dpkg -r testapp
补充:为了在安装deb包时候生成桌面快捷方式,需要修改testApp下的testApp.desktop文件内容及在DEBIAN文件夹下增加postinst文件,该文件作用是在安装deb包后执行的脚本内容。
补充1:在DEBIAN文件下增加prerm文件,该文件的作用是在卸载安装包前执行该文件的脚本内容。
testApp.desktop修改后内容如下:
[Desktop Entry]
Type=Application
Name=testApp
Exec=/usr/src/testApp/testApp
Icon=/usr/src/testApp/testApp.png
Comment= info
Terminal=false
postinst文件内容如下:
#!/bin/bash
cp /usr/src/testApp/testApp.desktop /home/${SUDO_USER}/Desktop/
chmod +x /home/${SUDO_USER}/Desktop/testApp.desktop
prerm文件内容如下:
#!/bin/bash
filename=/home/${SUDO_USER}/Desktop/testApp.desktop
if [ -f ${filename} ]
then
rm ${filename}
fi
exit 0