当前位置: 首页 > news >正文

linux下Qt使用LinuxDeployqt打包

linux下Qt使用LinuxDeployqt打包

环境: Ubuntu2204

一、直接使用linuxDeployqt程序打包

1.下载linuxdeployqt-continuous-x86_64.AppImage

https://github.com/probonopd/linuxdeployqt/releases

2.修改名称和权限

mv linuxDeployqt-x86_64.AppImage linuxdeployqt
sudo chmod +x linuxdeployqt

3.配置QT环境变量

export PATH=/opt/qt5.12/5.12.12/gcc_64/bin:$PATH
export LIB_PATH=/opt/qt5.12/5.12.12/gcc_64/lib:$LIB_PATH
export PLUGIN_PATH=qt5.12/5.12.12/gcc_64/plugins:$PLUGIN_PATH
export QML2_PATH=qt5.12/5.12.12/gcc_64/qml:$QML2_PATH

4. 将Qt应用拷贝到某个目录下

使用linuxDeployqt命令打包

linuxDeployqt xxx -appimage

xxx: 改为自己要打包的应用名称

输出
Error: The host system is too new.
原因

ubuntu版本太新

二、另一个方法下载linuxDeployqt源码并编译

1. 下载tar源码, 解压

https://github.com/probonopd/linuxdeployqt/releases
https://download.csdn.net/download/LiHong333/88565443

2. 编译源码

在linuxdeployqt-continuous/tools/linuxdeployqt目录下找到main.cpp文件,修改版本判断,将下面的代码屏蔽;

//if (strverscmp (glcv, "2.32") >= 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 supported mainstream distribution (Ubuntu Focal Fossa), which is glibc 2.31.";
        //    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;
        //}

3. 在linuxdeployqt-continuous目录下编译

/linuxdeployqt-continuous$ qmake
/linuxdeployqt-continuous$ make
cd src/ && ( test -e Makefile || /opt/qt5.12/5.12.12/gcc_64/bin/qmake -o Makefile /linuxdeployqt-continuous/src/src.pro ) && make -f Makefile 
make[1]: Entering directory '/linuxdeployqt-continuous/src'
make[1]: Nothing to be done for 'first'.
http://www.dtcms.com/a/4875.html

相关文章:

  • rocky8.9配置K8S集群kubernetes,centos同理
  • 汽车功能安全ISO26262
  • python监控显卡显存
  • Go 从编译到执行
  • 目标检测开源数据
  • 选择合适的企业邮箱供应商的策略与技巧
  • 基于javaweb的宠物服务商城系统设计与开发
  • Unity中Shader的BRDF解析(一)
  • 【论文学习】机器学习模型安全与隐私研究综述
  • MySQL中自增id用完怎么办?
  • Linux:docker镜像的创建(5)
  • PHP:js中怎么使用PHP变量,php变量为数组时的处理
  • C#图像处理OpenCV开发指南(CVStar,04)——图片像素访问与多种局部放大效果的实现代码
  • 试用程序实现不使用缓存字节数组的方法复制C盘根目录下的a,jpg到E盘下的a.jpg
  • 数据结构与算法之递归: LeetCode 46. 全排列 (Typescript版)
  • Linux系统编程--文件操作函数
  • Vue 3 面试经验分享
  • Docker的数据持久化;Docker网络;Dockerfile编写
  • 传音荣获2023首届全国人工智能应用场景创新挑战赛“智能家居专项赛”三等奖
  • 如何把ipa文件(iOS安装包)安装到iPhone手机上? 附方法汇总
  • Springboot+vue的新冠病毒密接者跟踪系统(有报告)。Javaee项目,springboot vue前后端分离项目
  • Android 13.0 Launcher3 禁止首屏时钟部件拖动到其他屏
  • visual studio 2022 更改字体和大小
  • c 语言常见的易错题分析
  • localForage使用 IndexedDB / WebSQL存储
  • 数据结构---堆
  • 火柴人版王者-Java
  • JavaWeb后端数据库MySQL的使用
  • 【Qt之QFileInfo】使用
  • 智慧城市运营管理平台解决方案:PPT全文61页,附下载