Linux下QT程序打包
1 简介
- windows下打包Qt程序有对应的工具windeploy,linux没有自带的,便自己找。
- ldd命令用于判断某个可执行的 binary 档案含有什么动态函式库。
2 步骤(脚本)
2.1 Release版本
QtCreate使用Release版本编译
2.2 建文件夹并拷贝执行文件
从可运行程序的文件中拿出可执行文件,例:UmArm
2.3 ldd查看链接库
例:ldd UmArm
2.4 导出所需要的库
#!/bin/sh
exe="UmArm" #你需要发布的程序名称
des="/home/junion/Desktop/bin/" #创建文件夹的位置
deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s "),$3 } }')
cp $deplist $des
2.5 编写执行脚本
- UmArm.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 "$@"
2.6 运行执行脚本
chmod +x UmArm.sh
./UmArm.sh
3 步骤(LinuxDeployQt)
见
Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)
在Linux下使用linuxdeployqt发布Qt程序
参考
1、ubuntu 环境下的QT程序打包
2、linux中的ldd命令简介
3、ldd命令
4、Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)
5、在Linux下使用linuxdeployqt发布Qt程序