ubuntu打包qt程序(亲测有效)

在qt的.pro文件添加QMAKE_LFLAGS += -no-pie,可以直接双击运行.exe

将robot.exe复制到新建的robot文件夹(我的是robot文件路径是/home/mylinux/robot)
在robot文件夹新建cplib.sh,并sudo chmod +x cplib.sh
cplib.sh输入

exe="robot" #修改发布程序的名称
des="/home/mylinux/robot" #修改输出可执行文件路径
deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s "),$3 } }')  
cp $deplist $des

然后运行./cplib.sh,就会生成一堆东西。

在robot文件夹新建robot.sh(注意:这里文件名一定是可执行文件名+.sh),并sudo chmod +x robot.sh
robot.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 "$@"

执行chmod +x robot 和chmod +x robot.sh保证在其他平台也可使用。
运行软件是执行./robot.sh

websocket的要sudo apt-get install libqt5websockets5-dev

你可能感兴趣的:(qt5,qt,linux,ubuntu)