Linux下的软件打包发布

本文详细介绍了在Raspbian环境下使用QtCreator进行程序编译、打包及发布的全流程。从设置release编译路径开始,到将可执行文件复制到指定文件夹,再到创建并编辑pack.sh、broadcast.sh和start.sh脚本,最后测试程序运行,确保程序可以在不同机器上顺利运行。

以Raspbian环境下的QT Creator为例:

1.在release下编译运行程序

在这里插入图片描述
设置好release下的编译路径,方便找到编译生成的可执行文件
在这里插入图片描述

2.将编译生成的可执行文件放入另一个文件夹

编译运行成功后,在编译路径中可以找到一个以工程名命名的可执行文件
在这里插入图片描述
将该文件复制到一个新的文件夹

3.可执行文件的目录下新建pack.sh文件

在文件夹目录下打开终端,执行

sudo touch pack.sh
sudo vi pack.sh

在pack.sh中输入

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

4.新建broadcast.sh和start.sh

第一个sh文件的名字应与生成的可执行文件的名字保持一致
打开终端,执行

sudo touch broadcast.sh
sudo touch start.sh

编辑broadcast.sh

sudo vi broadcast.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 "$@"

编辑start.sh

sudo vi start.sh

输入

#!/bin/sh
cd /home/pi/Desktop/broadcast_release
sudo ./broadcast.sh

5.执行pack.sh,打包成功

在终端中执行
sudo ./pack.sh
可以看到文件夹内多了很多文件
没有提示错误即打包成功

6.测试程序是否可以运行

在终端中执行
./start.sh
若成功,则运行该程序
若失败,则重新执行以上几步,或者寻找其他方式打包发布

至此,程序打包全部结束,文件夹中包含了程序全部的执行文件、环境等,只需要将该文件夹打包发布到其他对应机器上即可运行成功。

评论 3
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值