Qt:Qt 5.* &vs2015 编译静态库版本

谁借莪1个温暖的怀抱¢ 2022-09-29 04:22 403阅读 0赞

简介

静态编译qt5.6 、静态编译qt5.7、 静态编译qt5.8

安装Qt

去Qt官网下载Qt安装包
这里写图片描述
安装Qt和源码,一定要勾选source选项
这里写图片描述
添加bin到系统变量
这里写图片描述

工具

需要python3和 perl、 vs2015 第三方工具,到官方下载安装
这里写图片描述

在命令行测试工具是否安装成功
这里写图片描述

configue

首先修改文件C:\Qt\Qt5.6.2\5.6\Src\qtbase\mkspecs\common\msvc-desktop.conf 把MD替换为MT静态编译
这里写图片描述

这里写图片描述

然后上面打开的终端cd命令跳到Qt源码目录 ,输入下面命令

5.6

  1. configure -confirm-license -opensource -platform win32-msvc2015 -debug-and-release -static -prefix "C:\qt\static-vs2015-qt" -qt-sql-sqlite -qt-sql-odbc -plugin-sql-sqlite -plugin-sql-odbc -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -target xp -qt-freetype -qml-debug -no-angle -nomake tests -nomake examples

5.8

  1. configure -confirm-license -opensource -platform win32-msvc2015 -debug-and-release -static -prefix "C:\qt\static-vs2015-qt" -qt-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -qml-debug -no-angle -nomake tests -nomake examples

5.8需要把-qt-sql-sqlite 改为-qt-sqlite ,从5.7.0开始源码里configure已经去掉了-target xp这个选项的支持了

nmake

这里写图片描述
有时候生成的pri文件有问题(获取cl版本时截取的字符串有问题),需要手动修改下
这里写图片描述
这里写图片描述

修改如下,如果pri文件没有报错,就不用修改

  1. CONFIG+= debug static rtti no_plugin_manifest directwrite qpa
  2. host_build {
  3. QT_ARCH = i386
  4. QT_TARGET_ARCH = i386
  5. } else {
  6. QT_ARCH = i386
  7. }
  8. QT_CONFIG += minimal-config small-config medium-config large-config full-config debug_and_release build_all release debug static zlib gif jpeg png freetype harfbuzz build_all accessibility opengl dbus audio-backend directwrite native-gestures qpa concurrent
  9. #versioning
  10. QT_VERSION = 5.6.2
  11. QT_MAJOR_VERSION = 5
  12. QT_MINOR_VERSION = 6
  13. QT_PATCH_VERSION = 2
  14. QT_EDITION = OpenSource
  15. QMAKE_TARGET_OS = xp
  16. QT_DEFAULT_QPA_PLUGIN = qwindows
  17. QT_CL_MAJOR_VERSION = 19
  18. QT_CL_MINOR_VERSION = 00
  19. QT_CL_PATCH_VERSION = 24210

编译

nmake编译

这里写图片描述
编译5.7和5.8时可能会遇到这个问题,把qtuiohandler.cpp文件改为带BOM的utf-8编码就可以了

安装

  1. nmake install

配置Qt Creator

添加Qt版本,提示qmlscene未安装警告,把以前的qmlscene.exe拷贝到静态库中的bin文件夹即可
这里写图片描述
添加构建套件
这里写图片描述

引用

http://doc.qt.io/qt-5/configure-options.html

发表评论

表情:
评论列表 (有 0 条评论,403人围观)

还没有评论,来说两句吧...

相关阅读

    相关 vs2015编译CEF

    下载库 从 [预编译库下载地址][Link 1] 下载对应预先编译好的库,点击的时候可能会发现跳出一个空白的对话框,其实是下面图示那样的,翻墙就好了 ![这里写图片描