Deepin(UOS使用linuxdeployqt打包qt程序【自测ok】
一、编译linuxdeployqt
默认你已经安装好Qt creator
linuxdeployqt下载地址
下载上图中的任意一个代码,解压(以tar.gz为例子)
tar -zxvf xxx.tar.gz
1
进入linuxdeployqt文件夹
cd linuxdeployqt
1
修改tools/linuxdeployqt/main.cpp,注释掉判断版本的代码
vim tools/linuxdeployqt/main.cpp
1
需要注释的代码如下
/*if (strverscmp (glcv, "2.27") >= 0) {
qInfo() << "ERROR: The host system is too new.";
qInfo() << "Please run on a system with a glibc version no newer than what comes with the oldest";
qInfo() << "currently still-supported mainstream distribution (xenial), which is glibc 2.23.";
qInfo() << "This is so that the resulting bundle will work on most still-supported Linux distributions.";
qInfo() << "For more information, please see";
qInfo() << "https://github.com/probonopd/linuxdeployqt/issues/340";
return 1;
}*/
1
2
3
4
5
6
7
8
9
10
11
安装依赖:
sudo apt-get -y install g++ libgl1-mesa-dev
1
使用Qt Creator打开linuxdeployqt下的linuxdeployqt.pro文件,修改编译模式为release,点击左下角小锤子图标,等待编译完成。
在生成的文件夹的bin目录下会生成linuxdeployqt文件,为了方便使用,将其复制到/uer/bin中
sudo cp linuxdeployqt /usr/bin
1
配置Qt环境
vim ~/.bashrc
1
在文件末尾添加,home/Qt5.14.2/5.14.2替换成自己的qt安装路径
export PATH=/home/Qt5.14.2/5.14.2/gcc_64/bin:$PATH
export LD_LIBRARY_PATH=/home/Qt5.14.2/5.14.2/gcc_64/lib:$LD_LIBRARY_PATH
export QT_PLUGIN_PATH=/home/Qt5.14.2/5.14.2/gcc_64/plugins:$QT_PLUGIN_PATH
export QML2_IMPORT_PATH=/home/Qt5.14.2/5.14.2/gcc_64/qml:$QML2_IMPORT_PATH
1
2
3
4
5
修改系统qt环境
cd /usr/lib/x86_64-linux-gnu/qt-default/qtchooser
sudo vi default.conf
1
2
修改为自己的qt安装路径
/home/Qt5.14.2/5.14.2/gcc_64/bin
/home/Qt5.14.2/5.14.2
1
2
官方编译文档
二、打包
使用Qt Creator编译release版本,新建一个文件夹(app),将生成的可执行文件复制到新建的文件夹下,进入文件夹(cd app),执行
linuxdeployqt xxx -appimage //xxx为编译生成的可执行文件
1
若如下图所示的两个错误不用管,这是生成图标失败,可自行百度ubuntu创建桌面图标解决
打包完成后如下图所示,执行./AppRun即可执行程序
参考
————————————————
版权声明:本文为CSDN博主「十里春风_jzh」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/weixin_43435307/article/details/118184742
相关文章
- Qt最新版5.12在Windows环境静态编译安装和部署的完整过程(VS2017)
- QT+SQLite 判断表中是否含有指定字段
- 解决qt程序运行时的cannot create Qt for Embedded Linux data directory: /tmp/qtembedded-0出错情形
- 【QT】测试Qt是否能连接上数据库
- 《QTP自动化测试权威指南(第二版)》—第1章1.4节开始使用QT
- Qt音视频开发30-qmedia内核qt4方案phonon播放(支持视频流)
- Qt编写地图综合应用56-实时动态轨迹
- Qt编写可视化大屏电子看板系统16-标准柱状图
- Qt音视频开发49-通用截图截屏
- Qt音视频开发5-vlc事件订阅
- Qt实现艺术字效果
- qt widget设置Qt::FramelessWindowHint和Qt::WA_TranslucentBackground, 会出现一个bug: 在最小化后还原时界面停止刷新(Qt5.1解决了这个问题。但实际Qt5.7还有这个问题)
- VS2010使用静态编译的qt库(Qt 5)
- QT+OpenGL(01)--实现三角形渲染
- Qt ------ window下工程项目打包成一个exe程序
- Qt打包、图标问题
- [已解决]报错: qt.qpa.plugin: Could not load the Qt platform plugin "windows" in "" even though it ...
- Qt Package Project 打包发布程序
- qt.qpa.plugin: Could not find the Qt platform plugin "windows" in ""
- QT源码之Qt信号槽机制与事件机制的联系