Linux 下 Qt打包 发布

1 篇文章 0 订阅
1 篇文章 0 订阅

假设我们编译的要拷贝到程序为 【boat/test】 其中boat为test软件的目录

1、在【boat】目录下,创建Qt目录:【boat/Qt】

2、拷贝【Qt安装目录】下的【lib】、【plugins】目录到【boat/Qt】目录下

3、在【boat】目录下创建【qt.conf】文件,内容如下:

[Paths]
Prefix= ./Qt/
Libraries=lib
Plugins = plugins

4、在【boat】目录下创建【test.sh】脚本,并执行 chomd +x test.sh ,脚本内容如下:

#!/bin/sh
makeAbsolute() {
    case $1 in
        /*)
            # already absolute, return it
            echo "$1"
            ;;
        *)
            # relative, prepend $2 made absolute
            echo `makeAbsolute "$2" "$PWD"`/"$1" | sed 's,/\.$,,'
            ;;
    esac
}

me=`which "$0"` # Search $PATH if necessary
if test -L "$me"; then
    # Try GNU readlink(1)
    nme=`readlink -nf "$me" 2>/dev/null`
    if test -n "$nme"; then
        me=$nme
    else
        # No GNU readlink(1), so let's try ls -l
        base=`dirname "$me"`
        me=`ls -l "$me" | sed 's/^.*-> //'`
        me=`makeAbsolute "$me" "$base"`
    fi
fi

bindir=`dirname "$me"`
libdir=`cd "$bindir" ; pwd`
# Add path to deployed Qt libraries in package
qtlibdir=$libdir/Qt/lib
if test -d "$qtlibdir"; then
    qtlibpath=:$qtlibdir
fi
# Add Qt Creator library path
_ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
LD_LIBRARY_PATH=$libdir:$qtlibpath${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
#echo 'ld path'
#echo $libdir$qtlibpath${LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH}
export LD_LIBRARY_PATH

#这是你启动的程序名称
./$appname 

注意test.sh必须test文件同名,如果不同名则修改修改test.sh最后一行以启动对应的软件

特别说明:发布给用户时建议采用压缩文件,以保证Qt库的链接符号文件在用户设备依然有效。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值