Ubuntu快速打包发布Qt应用程序

 

前段时间需要在linux下开发QT的串口程序,有一块板子已经

安装好QT作为调试机,需要打包给没装开发环境的板子做测试

打包步骤如下:

1)使用QT编译完之后在debug/release文件夹下得到可执行文件如demo

2)新建一个文件夹如demoPack,把demo拷贝这个地方

3)新建一个脚本文件pack.sh,作用是提取lib文件,内容如下:

#!/bin/sh 
exe="demo" #你需要发布的程序名称 
des="/home/admin1/demoPack" #创建文件夹的位置 
deplist=$(ldd $exe | awk  '{if (match($3,"/")){ printf("%s "),$3 } }') 
cp $deplist $des

4)新建一个脚本文件demo.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 "$@"

文件夹如下图:

Ubuntu快速打包发布Qt应用程序_第1张图片

5)在当前文件夹鼠标右键打开终端,输入./pack.sh

如果遇到权限不够,输入chmod 777 pack.sh,在执行./pack.sh

执行成功之后会得到依赖的lib文件,如图:

Ubuntu快速打包发布Qt应用程序_第2张图片

6)测试是否可以执行,在终端输入./demo.sh,遇到的问题可能会有

  如果遇到权限不够,可以使用chmod命令对shell脚本赋予权限
   如: chmod 777 ./demo.sh;
   如果遇到执行遇到Permission denied,是文件夹权限的问题,
   输入如:sudo chmod -R 777  当前文件夹路径

7)这个文件夹就可以在未安装QT的板子上测试使用

 

你可能感兴趣的:(QT)