Linux下Qt程序的打包发布
2015-12-20 21:54
741 查看
程序以test为例:
说明:exe :要发布的程序名称 des:指定复制的路径
5. 编写.sh文档 并将它放在与步骤4同一目录下(.sh文件命名必须与可执行文件名字一样例:可执行文件名 test, .sh 文件名为 test.sh)
.sh文件代码如下:
6. 执行这个.sh文件:
可能因为不行执行需更改权限:
chmod +x test.sh
Ok!大功告成,将这个文件复制到其他电脑上就可以运行了。
注:
Linux 版本:Ubuntu 14.04 LTS
Qt:5.2.1
参考地址:http://doc.qt.io/qt-5/linux-deployment.html
1. QtCreate使用Release版本编译
2. 从可运行程序的文件中拿出可执行文件,例:test
3. 终端下使用ldd命令查看需要的连接库,例:ldd test
4. 把ldd查询到的所有需要的库导出
这里提供一个脚本将ldd打印出来的依赖库复制到指定路径:#!/bin/sh exe="test" #发布的程序名称 des="/home/hejianglin/QtProject/build-test-Desktop-Release/ReleaseTest" #你的路径 deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s "),$3 } }') cp $deplist $des
说明:exe :要发布的程序名称 des:指定复制的路径
5. 编写.sh文档 并将它放在与步骤4同一目录下(.sh文件命名必须与可执行文件名字一样例:可执行文件名 test, .sh 文件名为 test.sh)
.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 "$@"
6. 执行这个.sh文件:
可能因为不行执行需更改权限:
chmod +x test.sh
Ok!大功告成,将这个文件复制到其他电脑上就可以运行了。
注:
Linux 版本:Ubuntu 14.04 LTS
Qt:5.2.1
参考地址:http://doc.qt.io/qt-5/linux-deployment.html
相关文章推荐
- Linux socket 初步
- linux lsof详解
- linux 文件权限
- Linux 执行数学运算
- 10 篇对初学者和专家都有用的 Linux 命令教程
- Linux 与 Windows 对UNICODE 的处理方式
- Ubuntu12.04下QQ完美走起啊!走起啊!有木有啊!
- 解決Linux下Android开发真机调试设备不被识别问题
- 运维入门
- 运维提升
- Linux 自检和 SystemTap
- Ubuntu Linux使用体验
- c语言实现hashmap(转载)
- Linux 信号signal处理机制
- linux下mysql添加用户
- Scientific Linux 5.5 图形安装教程
- 基于 Linux 集群环境上 GPFS 的问题诊断
- 谁是桌面王者?Win PK Linux三大镇山之宝
- vivi下重新调整分区