当前位置: 首页 > 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'.

相关文章:

  • 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手机上? 附方法汇总
  • 思想史家陈谷嘉逝世,曾为岳麓书院当代复兴奠定重要基础
  • 普京批准俄方与乌克兰谈判代表团人员名单
  • 联合国第二届运动会闭幕,刘国梁受邀成为“联合国运动会大使”
  • 中华人民共和国和巴西联邦共和国关于强化携手构建更公正世界和更可持续星球的中巴命运共同体,共同维护多边主义的联合声明
  • 在笔墨金石间,看胡问遂与梅舒适的艺术对话
  • 80后莆田市文旅局长马骏登台与杨宗纬合唱,“演唱会秒变旅游推介会”