LinuxDeployQT打包QT程序
创始人
2024-05-13 08:43:21
0
  1. 系统:ubuntu20.04

  1. 官网可直接下载使用https://github.com/probonopd/linuxdeployqt/releases,但是因为不支持ubuntu20所以本文通过下载源码编译的方式编译linuxdeployqt

  1. 安装编译相关依赖

  •  sudo apt-get install git g++ libgl1-mesa-dev wget

  • 安装QT

  • sudo apt-get install cmake

  • sudo apt-get install patchelf

  1. 下载Linuxdeployqt源码:https://github.com/probonopd/linuxdeployqt

  1. 注释掉linux版本的代码  vim tools/linuxdeployqt/main.cpp

  1. 编译:在linuxdeployqt目录下执行 sudo cmake CMakeLists.txt生成Makefile文件

  1. 执行make编译: sudo make -j8

  1. 编译成功后在linuxdeployqt/tools/linuxdeployqt/目录下生成linuxdeployqt可执行程序

将编译好的程序复制到/usr/local/bin/目录下

然后修改linuxdeployqt权限:sudo chmod -R 777 /usr/local/bin/linuxdeployqt

  1. 下载appimagetool-x86_64.AppImage

wget "https://github.com/AppImage/AppImageKit/releases/download/continuous/appimagetool-x86_64.AppImage"
chmod a+x appimagetool-x86_64.AppImage

然后: sudo ap ./appimagetool-x86_64.AppImage   /usr/local/bin/appimagetool

配置QT的环境变量: vim ~/.bashrc

  1. 加入:(注意下面的QT的安装目录请修改为自己QT的安装路径)

#add QT ENV

export PATH=/home/betterjason/Qt/5.15.2/gcc_64/bin:$PATH

export LD_LIBRARY_PATH=/home/betterjason/Qt/5.15.2/gcc_64/lib:$LD_LIBRARY_PATH

export QT_PLUGIN_PATH=/home/betterjason/Qt/5.15.2/gcc_64/plugins:$QT_PLUGIN_PATH

export QML2_IMPORT_PATH=/home/betterjason/Qt/5.15.2/gcc_64/qml:$QML2_IMPORT_PATH

保存文件,然后刷新下配置信息  source ~/.bashrc

  1. 打包QT程序方法:

  • 使用Realse方式编译QT程序

  • 新建一个文件夹AppDeploy,将QT编译生成二进制文件复制到AppDeploy文件中

  • 进入AppDeploy文件夹,执行 linuxdeployqt ./xxxx  -verbose=2  -appimage

  • 打包完成

  1. 打包完成后,在AppDeploy目录下的文件存在一个XXXX.desktop的文件,这个是Linux下程序的启动器,相当于windows下的快捷方式,内容如下

     

[Desktop Entry]

Type=Application

Name=My Application #应用的名字(快捷方式显示的文字)

Exec=/opt/MyApplication/xxxxx #应用的执行路径(绝对路径)

Icon=/opt/MyApplication/xxxxx.png #应用的图标(绝对路径)大小通常128*128

Comment=This is my demo #说明信息

Terminal=true #是否允许在终端启动

注意:

XXXX.desktop文件需要有执行权限,该文件才能变成图标,否则只是显示一个普通文件。

XXXX.desktop中的路径需要填写deb包的安装路径,非打包路径。

Terminal=true时,启动程序时,会附带启动终端界面,即会出现2个界面。

Terminal=false时,启动程序时,没有终端界面,仅显示程序这一个界面。

  1. 将xxxx.desktop 复制到/usr/share/applications/    

更改执行权限  chmod a+x  /usr/share/applications/xxxx.desktop

     将/usr/share/applications/xxxx.desktop 复制到用户的Desktop目录下    

         然后双击这个xxxx.desktop就可以启动程序了

相关内容

热门资讯

前端-session、jwt 目录:   (1)session (2&#x...
linux入门---制作进度条 了解缓冲区 我们首先来看看下面的操作: 我们首先创建了一个文件并在这个文件里面添加了...
关于测试,我发现了哪些新大陆 关于测试 平常也只是听说过一些关于测试的术语,但并没有使用过测试工具。偶然看到编程老师...
前缀和与对数器与二分法 1. 前缀和 假设有一个数组,我们想大量频繁的去访问L到R这个区间的和,...
nodejs:本地安装nvm实... 一、背景-使用不同版本node的原因 vue3+ts、nuxt3版本,node...
JAVA集合知识整理 Java集合知识整理 HashMap相关 HashMap的底层数据结构:jdk1.8之...
无刷直流电机介绍及单片机控制实... 无刷直流电机介绍及单片机控制实例前言基本概念优势与劣势使用寿命基本结构使用单片机控制实例电子调速器&...
fwdiary(2) dp2 1.传纸条  AcWing 275. 传纸条 - AcWing 走两条路,走一条最大的...
常用的DOS命令 常用的DOS命令 DOS(Disk Operating System,磁...
<C++> 类和对象(下) 1.const成员函数将const修饰的“成员函数”称之为const成员函数,cons...