博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Qt应用程序发布指南
阅读量:6858 次
发布时间:2019-06-26

本文共 1778 字,大约阅读时间需要 5 分钟。

  hot3.png

  1. 目的

    操作步骤

规范X11(即Linux)下Qt发布应用程序中子类(子部分)测试,方便阅读、学习及交流。

使用操作系统为Ubuntu 10.04版本。

  • 再X11平台下发布QT程序

  1. 当然,先写好应用程序,准备好需要使用的资源,如库lib和插件plugins。

  2. 以计算器extcalc为例,找到extcalc所使用的那些libQt*.so.4共享库(无需链接!),放在同一个目录下。(可以不同,修改shell脚本即可。

可以使用ldd extcalc查看。

  1. 编写extcalc.sh文件,需要同名

写入如下内容:

#!/bin/sh

appname=`basename $0 | sed s,\.sh$,,`

dirname=`dirname $0`

tmp="${dirname#?}"

if [ "${dirname%$tmp}" != "/" ]; then

dirname=$PWD/$dirname

fi

LD_LIBRARY_PATH=$dirname

export LD_LIBRARY_PATH

$dirname/$appname $*

保存文件,使用chmod + x extcalc.sh附加执行权限。(若要调试,可使用sh -x extcalc.sh。

  1. 关于plugins,推荐使用qt.conf。

Entry Default Value

Prefix QCoreApplication::applicationDirPath()

Documentation doc

Headers include

Libraries lib

Binaries bin

Plugins plugins

Data .

Translations translations

Settings .

Examples .

Demos .

最简单的qt.conf文件如下即可:插件再当前文件夹下的plugins文件夹里

[Paths]

Prefix = .

Plugins = plugins

附录

遇到的问题:我想很多人都遇到这样一个问题,却在网上搜索答案,看过无数的英文贴,有说ubuntu10.4 bug的,还有些其他,根本与本发布实现无关。。(答案差之千里,但还是感谢论坛的能人志士,犹如我在xchat上提问,回答我的那些前辈,我的英语也在努力前进(全英文交流,真的表达不清

问题情况概述:当你拿好上述一切,去到另一台电脑前,例如其他版本的Linux,如我是在ubuntu 10.04下编译的,而我现在去fedora、opensuse、debian或者其他,可能遇到这样的问题:

/home/rainchou/Desktop/T/Maskshot_manager/./Maskshot_manager: /lib64/libc.so.6: version `GLIBC_2.9' not found (required by /home/rainchou/Desktop/T/Maskshot_manager/./libQtGui.so.4)

/home/rainchou/Desktop/T/Maskshot_manager/./Maskshot_manager: /lib64/libc.so.6: version `GLIBC_2.11' not found (required by /home/rainchou/Desktop/T/Maskshot_manager/./libQtGui.so.4)

/home/rainchou/Desktop/T/Maskshot_manager/./Maskshot_manager: /lib64/libc.so.6: version `GLIBC_2.9' not found (required by /home/rainchou/Desktop/T/Maskshot_manager/./libQtCore.so.4)

其实解决办法很简单,不是应用程序的问题,而是你的Qt库不对,请另外找吧。(怎么找,这个我还真是不好说,因为我所解决的这个问题,引发并发现了整个项目组的Qt库都不能用,只有服务器的可以,真是奇怪啊

转载于:https://my.oschina.net/mjRao/blog/90024

你可能感兴趣的文章
一次邮件发送协议SMTP问题排查
查看>>
BugkuCTF 文件上传测试
查看>>
7- OpenCV+TensorFlow 入门人工智能图像处理-彩色反转&边缘检测
查看>>
不同地域的内容偏好性分析
查看>>
JPA @Column 字段命名 默认驼峰转换
查看>>
作者谈《阿里巴巴Java开发手册(规约)》背后的故事
查看>>
缓冲区溢出攻击相关知识
查看>>
Purism 发布 PureBoot:高度安全、完整的 Linux 引导流程
查看>>
poj2891:Strange Way to Express Integers
查看>>
阿里云发布智能语音自学习平台,零基础训练人工智能模型
查看>>
想成为软件架构师,一定要看的经典书单
查看>>
真正理解拉格朗日乘子法和 KKT 条件
查看>>
梓论坛 zibbs 1.0 发布,PHP 轻论坛系统
查看>>
阿里云专访Redisson作者Rui Gu:构建开源企业级Redis客户端之路
查看>>
读书笔记 effective c++ Item 55 让你自己熟悉Boost
查看>>
【小工匠聊Modbus】08-功能代码01H
查看>>
高可靠性、超大规模、极致性能、灵活部署的阿里云Apsara Block Storage,你pick嘛?...
查看>>
Mealy和moore型状态机的主要区别
查看>>
Linux环境下安装mysql并分配用户权限
查看>>
VR视频创作,想说爱你不容易
查看>>