版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u010168781/article/details/81458272
参考博客
https://blog.csdn.net/theArcticOcean/article/details/68069964
https://blog.csdn.net/hjl_1991/article/details/50365927
亲测过程
1、编译处release版本的Qt程序
2、创建打包文件夹
mkdir release
3、进入文件夹,将要打包的程序拷贝到文件中
cd release
cp 编译处程序的全路径 .
4、创建执行脚本ldd.sh(本质是使用ldd命令,查看程序链接的库,然后拷贝到打包文件夹中)
记得修改权限 chmod +x ldd.sh
#! /bin/bash
EXE='desktopwidget' #我的程序名
PWD=`pwd` #打包的路径
files=`ldd $EXE | awk '{ if(match($3,"^/"))printf("%s "),$3 }'`
cp $files $PWD
5、运行时的脚本(本质是配置环境变量LD_LIBRARY_PATH)
运行脚本命名为:程序名+.sh;如desktopwidget.sh
记得修改权限 chmod +x desktopwidget.sh
#!/bin/sh
appname=`basename $0 | sed s,\.sh$,,` #获取\和.sh之间的字符串
dirname=`dirname $0`
tmp="${dirname#?}"
#绝对路径
if [ "${dirname%$tmp}" != "/" ]; then
dirname=$PWD/$dirname
fi
LD_LIBRARY_PATH=$dirname
export LD_LIBRARY_PATH
$dirname/$appname "$@" #"$@" 脚本参数