下载地址:
https://download.qt.io/archive/qt/5.12/5.12.10/qt-opensource-windows-x86-5.12.10.exe
注意事项:
高版本的为everywhere版本安装包比较大。
选择安装组件:
MinGW 7.3.0 32-bit
MinGW 7.3.0 64-bit
MSVC 2017 32-bit
MSVC 2017 64-bit
选择其中一种即可(这里选MinGW 7.3.0 32-bit),Minimalist GNU for Windows,不依赖于第三方库。
安装编译器及运行环境: 安装MSVC组件时,需要安装
https://visualstudio.microsoft.com/zh-hans/vs/older-downloads/
下载并安装Visual Studio 2010 VC++ Redistributable(实际上是vcredist_x64/vcredist_x86)
下载并安装Microsoft 生成工具 2015 (编译器)
修改应用程序图标:
修改.pro工程文件,指定RC_ICONS选项
QT += core gui
# 添加RC_ICONS指定图标文件
RC_ICONS = SerialPort.ico
# 指定生成应用程序的名称
TARGET=SerialPort
软件打包Windows
1.编译release版本,并将其复制到发布目录中;
2.复制依赖文件
打开MinGW 7.3.0 32-bit命令提示符(名称与安装版本有关)
切换至发布目录,执行windeployqt命令,把所需的依赖文件复制至应用程序目录下,然后将整个目录发布。
cd /d F:\publish\
windeployqt.exe SerialPort.exe
也可以不切切换目录,直接指定文件路径执行,也会将依赖文件复制至目标目录中。
3.生成单文件(Enigma Virtual Box),根据提示可将目录打包成单文件。
Linux打包程序
新建打包脚本pack.sh内容如下:
#!/bin/sh
#你需要发布的程序名称
exe="SerialPort"
#创建文件夹的位置
des="/opt/apps"
# 通过ldd命令找出依赖的动态链接库文件
deplist=$(ldd $exe | awk '{if (match($3,"/")){ printf("%s "),$3 } }')
cp $deplist $des
然后向SerialPort.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 "$@"
- 阅读全文 -