Windows下打包
使用qt自带的打包程序
- MinGW(需要注意自己构建可执行程序的位数),64位构建就选择MinGW64
- MSVC (这个会缺少C++的环境,需要后期对应在开发的主机中寻找缺少的文件一般为msvcpXXX.dll…)
注意qt构建套件选择是64位,就从C/windows/System32中寻找缺失文件
如果qt构建套件选择是32位,就从C/windows/SysWOW64中寻找缺失的文件
程序打包发布一般都是release版本,以release版本运行生成的可执行程序,将生成的可执行程序放置在另一个新的文件夹下。
打开MinGW(64位)-64、32根据构建套件选择。
输入:
Windeployqt是qt打包的命令,chartthemes.exe是要打包的程序,前面为其所在路径。
Linux下打包:
- qtcreator 使用release版本编译
- 建文件夹并拷贝可执行程序 从可运行程序的文件中拿出可执行文件
- Ldd查看链接库
- 导出所需要的库:新建pack.sh
A #!/bin/sh
exe=“UmArm” #你需要发布的程序名称
des=“/home/junion/Desktop/bin/” #创建文件夹的位置
deplist=$(ldd $exe | awk ‘{if (match($3,“/”)){ printf("%s "),$3 } }’)
cp $deplist $des
B 给pack.sh赋予可执行权限
Chmod +x pack.sh
C 执行pack.sh导出可执行文件的链接库
./pack.sh 可执行文件名称
4 .编写执行脚本
#!/bin/sh
appname=basename $0 | sed s,\.sh$,,
dirname=dirname $0
tmp="KaTeX parse error: Expected '}', got '#' at position 9: {dirname#̲?}" if [ "{dirname%KaTeX parse error: Expected 'EOF', got '}' at position 4: tmp}̲" != "/" ]; the…PWD/
d
i
r
n
a
m
e
f
i
L
D
L
I
B
R
A
R
Y
P
A
T
H
=
dirname fi LD_LIBRARY_PATH=
dirnamefiLDLIBRARYPATH=dirname
export LD_LIBRARY_PATH
d
i
r
n
a
m
e
/
dirname/
dirname/appname “$@”
运行执行脚本:
chmod +x UmArm.sh
./可执行程序名称.sh
注意:有时可能需要添加Qt相关的依赖库,详见另一篇文档(linux打包QT程序)