Linux系统下QT打包程序

Linux系统下QT打包程序

环境

Ubuntu 16.04LTS
QT

具体过程

  1. 打开QT Creator,新建一个名为test的项目;
  2. 在项目中编辑任意内容;
  3. 在QT Creator下使用Release编译;
    (Debug编译的文件比较大,而Release小很多)
  4. 从编译过程中生成的文件中找到文件名为test的可执行文件,复制;
  5. 在任意位置新建一个文件夹,将test粘贴进去;这里我新建文件夹名为R_Test
  6. (可选)在终端下输入 ldd test 查看需要的链接库;
  7. 把需要的链接库导出;

导出利用下面这个脚本:

#!/bin/sh

exe="test" #可执行文件的名字
des="/home/xx/R_Test" #刚才创建的文件夹的路径

deplist=$(ldd $exe | awk  '{if (match($3,"/")){ printf("%s "),$3 } }')
cp $deplist $des

在R_Test中新建一个文件命名为loadlib.sh,将上面那段脚本复制进去。

注意:两个注释的地方需要改成对应的内容,因人而异

  1. 新建一个test.sh文件,仍然放在R_Test下面(.sh文件命名必须与可执行文件名字一样例:可执行文件名 test, .sh 文件名为 test.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 "$@"

  1. 执行两个.sh文件
# 加载需要的包
./loadlib.sh
# 运行test可执行文件
./test.sh

# 如果上面的命令不能运行,更改权限
# 先执行下面两条命令更改权限,然后在执行上面两条命令运行两个文件
chmod +x loadlib.sh
chmod +x test.sh  

将这个文件拷贝到其他主机即可运行。
到此,打包完成。

参考博客

http://doc.qt.io/qt-5/linux-deployment.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值