跳转到帖子
登录关注  
墨香年少

静态编译Qt5.15.2

已推荐帖子

本来一直以来,一些小工具,我都是用c#来写的,昨天用c#操作mysql一直出问题,貌似我的connection不可以重复使用,google了下也没找到解决方案,于是我退而求其次,看看c#怎么操作mysql的,结果也都是一些玩具一样的代码,于是怒从心头起,恶向胆边生,索性静态编译下Qt去开发以后这些小工具。

 

于是昨天晚上十点,我输入了nmake后敲了回车,于是凌晨1点我还在等,后来困得不行就睡了。早上起来又敲的nmake install,到了公司后又配置的KIT,写了一个小程序,测试成功。

这里有一点需要注意的是,静态编译无法动态载入链接库,所以,在nmake之前,必须确保想要的库是yes状态,

 

下面是我的静态编译过程,没啥不一样的,就是按照网上的教程一步步来就成功了。

下载:qt-everywhere-src-5.15.2.zip, 大小:962 MB (1,009,224,272 字节) 下载地址:https://mirrors.tuna.tsinghua.edu.cn/qt/archive/qt/5.15/5.15.2/single/qt-everywhere-src-5.15.2.zip

新建一个文件夹用来存放静态编译后的Qt,比如:D:\QT5_STATIC

我编译的是32位的MSVC版本的Qt

首先,在开始菜单中,搜索:x86 Native Tools Command Prompt for VS 2019,打开,进入src目录

选择mvsc工具.jpg

 

cmd_enter_src.jpg

 

安装perl

我安装的是:strawberry-perl-5.32.1.1-32bit.msi,下载地址是:https://strawberryperl.com/download/5.32.1.1/strawberry-perl-5.32.1.1-32bit.msi

perl_version.png

 

安装python,我安装的是python-2.7.8.msi,下载地址是:https://www.python.org/ftp/python/2.7.8/python-2.7.8.msi

python_version.png

 

修改:D:\QT5\qt-everywhere-src-5.15.2\qtbase\mkspecs\common\msvc-desktop.conf

msvc_desktop.conf.png

QMAKE_CFLAGS_RELEASE    = $$QMAKE_CFLAGS_OPTIMIZE -MD
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MD
QMAKE_CFLAGS_DEBUG      = -Zi -MDd

修改为:

QMAKE_CFLAGS_RELEASE    = $$QMAKE_CFLAGS_OPTIMIZE -MT
QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO += $$QMAKE_CFLAGS_OPTIMIZE -Zi -MT
QMAKE_CFLAGS_DEBUG      = -Zi -MTd

在刚才的 x86 Native Tools Command Prompt for VS 2019 工具里输入:

configure.bat -static -prefix "D:\QT5_STATIC" -confirm-license -opensource  -debug-and-release -platform win32-msvc  -nomake examples -nomake tests  -plugin-sql-mysql -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp

然后输入:

nmake

这个可能需要1-4个小时不等

成功后输入:

nmake install

完成后就成功了,接下来就是QtCreator配置kit了


目之所及,皆是回忆,心之所想,皆是过往

分享这篇帖子


链接帖子
分享到其他站点

切记一定要把openssl编译进去

SSL support.................yes
OpenSSL support.............yes

 


目之所及,皆是回忆,心之所想,皆是过往

分享这篇帖子


链接帖子
分享到其他站点

下载openssl,https://www.openssl.org/source/openssl-1.1.1o.tar.gz

使用x86 Native Tools Command Prompt for VS 2019进入openssl源码目录

输入命令:perl Configure VC-WIN32 no-asm --prefix=D:\QT5\openssl

执行:nmake

执行nmake install

重新解压Qt源码包,重新编译一次

configure.bat -static -prefix "D:\QT5_STATIC_SSL" -confirm-license -opensource  -debug-and-release -platform win32-msvc  -nomake examples -nomake tests  -plugin-sql-mysql -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -mp -ssl -openssl-linked OPENSSL_PREFIX=D:\QT5\openssl

这样,这次的静态编译就得到了支持ssl的静态Qt


目之所及,皆是回忆,心之所想,皆是过往

分享这篇帖子


链接帖子
分享到其他站点

这是我最后的配置命令

configure.bat -confirm-license -opensource -platform win32-msvc -mp -debug-and-release -static -prefix "D:\QT5_STATIC_SSL"  -sql-mysql -openssl-linked   -qt-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -qt-pcre -qt-harfbuzz -no-qml-debug -no-angle -nomake tests -nomake examples -skip wayland -skip qtwebengine -I "D:\QT5\openssl\include" -L "D:\QT5\openssl\lib" -I "D:\MySQL\55\include" -L "D:\MySQL\55\lib"

 


目之所及,皆是回忆,心之所想,皆是过往

分享这篇帖子


链接帖子
分享到其他站点

创建帐户或登录来提出意见

你需要成为会员才能提出意见

创建帐户

注册成为会员。只要几个简单步骤!

注册帐户

登录

已有帐户? 请登录。

现在登录
登录关注  

×
×
  • 创建新的...

重要信息

注册必须使用2-8个中文汉字作为账号