Qt建议安装动态链接Dbug版和编译安装静态链接release版

前提:

先安装动态链接Dbug版,方法:QT5.10开发(1)安装QT5.10

地址:http://blog.csdn.net/qq_15304853/article/details/79165301

然后编译静态链接release版,方法:

1 准备工作

1.1 编译环境

Windows 10 (Multiple Editions), Version 1703 (Updated July 2017) (x64)

1.2 建立文件夹结构

假设之前已安装Qt存放在D:pg-Qt目录下,该目录此时内容应如下:

进入5.10.0目录,新建目录:mingw53_32_static 和 qt_build_mingw53_32_static,结果如下

1.3 准备源码

如果之前安装时选择连源码一起安装,则此时源码已经在:D:\pg-Qt\5.10.0\Src目录下了,参见上图。

如果为选择连源码一起安装,则可从Qt官网下载:http://download.qt.io/official_releases/qt/5.10/5.10.0/single/   下载的qt源码包“qt-everywhere-src-5.10.0.tar.xz”,解压后,放在硬盘的根目录。例如:“F:\qt-everywhere-src-5.10.0 ”

注:如果qt源码目录的路径比较长会导致编译qtimageformats时出现 无法打开编译器生成的文件“”:Invalid argument的错误,所以放在根目录下,尽量减少路径长度。

2 安装编译所需的工具(直接在360软件宝库搜索安装)

1、python 2 ,官网“https://www.python.org/downloads/”  本次测试编译版本为python-2.7.13。

不安装在配置qt时会提示:WARNING: Python version 2 (2.7.5 or later) is required to build QtWebEngine.

2、Ruby ,官网“http://www.ruby-lang.org/en/downloads/”  本次测试编译版本为Ruby-1.9.2。

3   ActivePerl,官网“https://www.activestate.com/activeperl/downloads”本次测试编译版本ActivePerl-5.24.1.2402

如果不编译qtwebkit,就不用安装ActivePerl了。

注意:安装时必须选择“建立环境变量”选项。,也可以手动建立,我的如下:

3 配置Qt

3.1准备openssl

下载别人专门为Qt编译好的openssl,地址 http://www.cnblogs.com/findumars/p/6372223.html,下载后解压OpenSSL的zip压缩包(openssl-1.0.1c_static_w32_mingw.zip)后放置:D:pg-Qt目录下,此时路径为:D:pg-Qt\openssl-1.0.1c_static_w32_mingw

也可以自己编译,参考:

静态编译OpenSSL并整合到Qt

http://blog.csdn.net/lixiaoxin1989/article/details/78421573

Windows 下编译 OpenSSL

http://blog.csdn.net/liang19890820/article/details/51658574

openSSL1.1.1的编译

http://blog.csdn.net/lostspeed/article/details/69492531

3.2

打开终端,开始==》程序==》Qt5.10.0==》Qt 5.10.0 for Desktop (MinGW 5.3.0 32 bit)进入命令窗口

3.3 检查命令执行情况

以管理员用户运行windows 命令行。

1)运行命令“gcc –v”  确保编译器能够正常运行;

2)运行命令“perl –v”确保perl能够正常运行;

3)运行命令“ruby  –v”确保ruby能够正常运行;

4)运行命令“python”确保python能够正常运行,按“Ctrl+Z”结束运行;

5)运行命令“sh”确保该命令不能执行,其会影响ming32-make的执行。

3.4使用shadow-build配置Qt

输入命令:

D :

cd D:\pg-Qt\Qt5.10.0\qt_build_mingw53_32_static

在该目录下运行下面命令:

F:\qt-everywhere-src-5.10.0\configure.bat  -static -release -confirm-license  -opensource -opengl desktop -platform win32-g++  -prefix "D:\pg-Qt\5.10.0\mingw53_32_static" -sql-sqlite  -sql-odbc -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -make libs  -nomake tools -nomake examples -nomake tests -openssl-linked  OPENSSL_LIBS="-llibssl -llibcrypto -lgdi32" -L D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw -I D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw\include-skip qt3d  -skip qtcanvas3d -skip qtdatavis3d -skip qtlocation -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebsockets -skip qtwebview -skip qtwinextra

1)如果不需要包含OpenSSL,去掉-openssl-linked  OPENSSL_LIBS="-llibssl -llibcrypto -lgdi32" -L D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw -I D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw\include

2)我跳过了一下包,如果你需要这些,去掉-skip qt3d  -skip qtcanvas3d -skip qtdatavis3d -skip qtlocation -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebsockets -skip qtwebview -skip qtwinextra

参数说明:

-confirm-license -opensource  :使用开源许可

-opengl desktop :桌面版

-platform win32-g++  :生成的编译器类型为:windows C++编译器

-release  :生成的编译器可编译产品: 发布版

-static  :生成的编译器为 静态链接编译器

-static-runtime:生成的编译器使用静态运行时库

-nomake tools:不编译tools

-prefix "5.10.0-desktop-mingw53-rel-static"  :生成的编译器安装位置

注:

如果出错,将D:\pg-Qt\5.10.0\qt_build_mingw53_32_static下文件全部删除,重新configure

1)通过shadow-build方法配置可实现源码和编译产生的文件如Makefiles, object files和其他中间文件的彻底分离。编译文件存放在:D:\pg-Qt\5.10.0\qt_build_mingw53_32_static

2) 也可以直接切换到F:\qt-everywhere-src-5.10.0\目录,

3) 然后执行:configure.bat  -static -release -confirm-license  -opensource -opengl desktop -platform win32-g++  -prefix "D:\pg-Qt\5.10.0\mingw53_32_static "  -sql-sqlite  -sql-odbc -qt-zlib -qt-pcre -qt-libpng -qt-libjpeg -qt-freetype -make libs  -nomake tools -nomake examples -nomake tests -openssl-linked  OPENSSL_LIBS="-llibssl -llibcrypto -lgdi32" -L D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw -I D:\pg-Qt\5.10\openssl-1.0.1c_static_w32_mingw\include-skip qt3d  -skip qtcanvas3d -skip qtdatavis3d -skip qtlocation -skip qtwayland -skip qtwebchannel -skip qtwebengine -skip qtwebsockets -skip qtwebview -skip qtwinextra

4) 但产生编译文件在F:\qt-everywhere-src-5.10.0\中

配置没有错误后的输出结果类似下图,不过最好检查自己需要的模块是否为yes:

4 编译Qt库

运行下面命令编译Qt库

mingw32-make

过程较长,我安装时没有跳过东西,用了8小时!

注:若前面编译过Qt库,需执行下面命令,mingw32-make clean清除(该方法为官方文档推荐方法,本人推荐直接删除“D:\pg-Qt\\5.10.0\qt_build_mingw53_32_static”文件夹下的全部内容重新配置,这样更彻底、快速)。

5 安装Qt

mingw32-make install

6 配置Qt库

1. 把编译的静态Qt库放到  动态的Qt库所在目录,直接复制动态Qt库\bin目录下的qt.conf文件,或在静态库\bin目录下建立qt.conf文件,里面输入以下内容:

[Paths]

Prefix=..

2. 打开D:\pg-Qt\5.10.0\mingw53_32_static\mkspecs\win32-g++\qmake.conf,

找到 QMAKE_LFLAGS_DLL

将后面都改成 -static

再加一行 QMAKE_LFLAGS

后面也改成 -static

结果:

QMAKE_LFLAGS               = -static

QMAKE_LFLAGS_EXCEPTIONS_ON = -mthreads

QMAKE_LFLAGS_EXCEPTIONS_OFF =

QMAKE_LFLAGS_RELEASE    = -Wl,-s

QMAKE_LFLAGS_DEBUG      =

QMAKE_LFLAGS_CONSOLE    = -Wl,-subsystem,console

QMAKE_LFLAGS_WINDOWS    = -Wl,-subsystem,windows

QMAKE_LFLAGS_DLL        = -static

3. 复制动态库中的bin/qmlscene.exe到静态库的bin文件夹中。否则在Qt Creator中添加Qt库时会报qmlscene未安装的错误。

4. 从动态链接版的Qt库的bin文件夹中复制Qt5Core.dll到静态链接版的lib文件夹中。

注:① 如果不执行此步,在Creator的Qt Version中将会显示“x86-windows-unknown-pe-32bit”。

5. 拷贝qml文件

因为一些我还没了解的原因,编译出来的Qt,在D:\pg-Qt5.10.0\mingw53_32-static\qml\QtQuick\Controls目录下是没有.qml文件,如下图,左边为普通的版本,右边为静态编译版本Qt。右边qml文件一个都没有。所以,这些qml文件都需要手动拷贝下。

7 集成到Qt Creator 中

工具--选项--构建和运行

在Qt Versions选项卡中添加D:\pg-Qt\5.10.0\mingw53_32_static\bin\qmake.exe静态配置后,点击“Apply”按钮。

在Kit选项卡中按下图配置。

8使用该 “windows静态链接库 ”套件编译出项目的release版静态链接软件

创建或打开项目-进入项目-点击“项目”-配置使用该库

点击-运行。

参考资料

(1) http://doc.qt.io/qt-5/windows-support.html

(2) http://doc.qt.io/qt-5/windows-requirements.html

(3) http://doc.qt.io/qt-5/windows-building.html

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

(5) http://blog.csdn.net/lixiaoxin1989/article/details/53838277

(6) http://blog.csdn.net/wsj18808050/article/details/72862478

(7)  Qt for Windows:Qt 5.9.0 MinGW 静态编译版本(包含OpenSSL)

http://blog.csdn.net/wsj18808050/article/details/72862478

VS2015 一键编译 QT5.10.1 X64位 静态库 MT

1662

从这里下载 http://download.qt.io/archive/qt/ 最新版本,现在是 5.10.1 点击进入 Single 目录,下载源代码 qt-everywhere-src-5.10.... 来自: dbyoung

VS2017+QT5.10编译QT静态库

3144

VS2017+QT5.10编译QT静态库 来自: Devout prayer的博客

Qt for Windows:Qt 5.6.0 MinGW 静态编译版本制作

2.4万

本文将讲述如何在Windows系统中,Qt源码,编译并且安装,以制作出一个可以一键静态编译Qt版本 我使用的环境是:Windows10 64位 专业版 Qt使用的是:Qt 5.6.0 for An... 来自: Jason’s home

下载 QT5.10.1静态编译版本 03-06

在Windows 10下使用MinGW静态编译QT5.10.1之后打包上传到百度网盘的地址,楼主用I5 4200编译了4个多小时。。分享出来方便大家,按照http://blog.csdn.net/sp

QT中 No such file or directory的解决办法

7748

报错具体情境: 使用D:\Qt\Qt5.8.0\5.8\mingw53_32> 终端进行编译程序,步骤如下: qmake -project //生成CH01.pr... 来自: IT张先生

QT 命令编译:mingw53_32到cpp目录下,qmake -project,qmake,make

40

QT 命令编译:mingw53_32到cpp目录下,qmake -project,qmake,make 来自: qq_32412403的博客

多版本Qt程序的编译注意问题

2487

今天研究了一下有些程序为啥在我的电脑上没法运行。经过一天的尝试,终于发现了问题所在。原来我的电脑里面为了兼容我以前的程序,下载了好多Qt版本,因此里面也包含了好多不同的编译器,其中有StrawBerr... 来自: 冬之晓

Qt5.9.2 (MinGW5.3.0 32bit)+ opencv3.3.1 环境配置

1110

安装Qt 注册帐号,Qt对于个人用户处于研究和学习使用是免费的,安装的时候需要登陆帐号。注册地址: https://www1.qt.io/download-open-source-access/ 下载... 来自: Sin1997的博客

编译OpenCV(CMake+Mingw492_32(Qt5.5自带)+OpenCV3.0)

1377

1、准备原料:CMake,OpenCV,Mingw(我的Mingw是使用Qt5.5的mingw版本里面自带的mingw) cmake:http://www.cmake.org/download/ ... 来自: Duino的工具箱

Win10下使用mingw64编译Qt5.5.0

7454

计算机系统:Win10(64bit) Qt版本:5.5.0 编译器:MinGW4.9.2 关于编译器的选择,我之前使用5.1.0编译一直失败,所以参考http://blog.csdn.net/q... 来自: an505479313的博客

文章热词 Windows Windows教程 Windows课程 Windows视频教程 Windows课程 相关热词 mingw windows 编译c++ qt5.10 开发android c++ mingw 编译命令 5.10怎样使用 dev-c++ android编译打印详细编译信息 python的学习详细过程 python基础教程(第2版

《QT - QT开发笔记》第3章 Qt项目建立、编译、运行和发布过程解析(QT5.10.1)

209

(项目创建->源码编译->程序运行->发布程序. 主体内容将按照下图中所示路线进行阐述: 图1... 来自: 不问归期的博客

关注

ruyulin

73篇文章

排名:千里之外

关注

天王

620篇文章

排名:423

关注

weixin_37653181

1篇文章

排名:千里之外

关注

匠go

13篇文章

排名:千里之外

QT5生成和使用静态库

5574

一:静态库和动态库的区别静态库和动态库的主要区别在于引用后使用的阶段。 静态库在编译的时候加载使用,运行的时候就不需要静态库了。 动态库又称为共享库,是在运行的时候加载使用的,所以在程序运行的时候... 来自: 学而时习之

QT5.10开发(1)安装QT5.10

9357

一、QT软件下载 Qt 5.9 之后的安装包与之前相比,不再区分 VS 版本和 MinGW 版本,而是全都整合到了一个安装包中。因此,与之前的安装包相比,体积也是大了不少,以前是 1G 多,现在是 2... 来自: 昕*water的博客

VS2013编译Qt5.4静态

2906

设置了一天,这静态编译也总算是虐出来了。。。Qt 的静态编译简直不要太麻烦啊。。。 感谢这位大神提供的方法 http://zerooverture.com/tutorials/qt/737.html ... 来自: 潘卓夫

老股民酒后无意说漏:20年炒股 坚持只看1指标!

东正金融 · 燨燚

QT5.10开发(2)QT入门了解及Demo介绍笔记

3232

什么是QT QT是一个跨平台C++图形用户界面应用类库框架。也就是GUI编程。当前最新版本5.10. 支持的平台 windows linux mac ios android QT的优点... 来自: ruyulin的博客

Qt第二天——静态版本编译

3385

上篇介绍了QT开发的基本知识——环境搭建,相信大家已经最qt开发有所了解,但是不管是msvc、mingw,都是使用qt的相关动态库进行编译的,因此,我们做出来的应用程序若是换到一台没有安装... 来自: jianghuan0122的博客

OpenCV3.3 + Qt 5.10 + Window10环境配置(mingw)

845

这是一个复杂且漫长的过程。网上找了许多文章,最后发现最好的文章就是Qt官网的帮助文档。链接:https://wiki.qt.io/How_to_setup_Qt_and_openCV_on_Windo... 来自: keemma的博客

opencv_contrib-4.0.0-mingw53_32

下载

11-20

opencv_contrib-4.0.0-mingw53_32。包含Debug/Release,x86。WITH_QT。

opencv343-mingw53_32

下载

10-29

opencv343-mingw53_32。可在QT creator中使用。包含opencv_contrib模块。Debug/Release。

opencv mingw-32 编译常见问题

30

OpenCV使用CMake和MinGW的编译 常见问题见最后 前言 本篇文章是介绍使用32在GW在Windows下编译OpenCV 生成32位的DLL 关于使用 64 位的 MinGW 编译 O... 来自: lx0307的博客

windows下 Qt-Mingw32(32bit) opencv4源码编译

39

为了省事的伙计可以直接下载我编译好的库包 https://download.csdn.net/download/qq_24423085/10736710 配置一下 bin 目录的环境就OK了。 1. ... 来自: Open_Source_FunNing的博客

MinGW最新离线安装包(2013-7-16最新)

下载

07-16

将下载的rar文件保存在“MinGW安装路径\var\cache\mingw-get\packages”目录下。再重新运行mingw-get-inst-20120426.exe安装即可 包含的组件:

MINGW64位编译QT

---------------------

作者:昕water-浅梦-windy萱雨

来源:CSDN

原文:https://blog.csdn.net/qq_15304853/article/details/79184589

版权声明:本文为博主原创文章,转载请附上博文链接!

mingw版本下qt与HTML,QT5.10开发(2) 在Windows 10下使用MinGW编译 静态Qt 5.10 release版 详细过程...相关推荐

  1. Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE

    Arduino可穿戴开发入门教程Windows平台下安装Arduino IDE Windows平台下安装Arduino IDE Windows操作系统下可以使用安装向导和压缩包形式安装.下面详细讲解这 ...

  2. Android SDK+Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建

    Android SDK+Eclipse+ADT+CDT+NDK 开发环境在windows 7下的搭建 这几天一直在研究 Android SDK C/C++平台的搭建,尽管以前有成功在Windows X ...

  3. ubuntu系统下用kazam软件录制的视频不能在windows系统下播放的解决方案

    ubuntu系统下用kazam软件录制的视频不能在windows系统下播放的解决方案 参考文章: (1)ubuntu系统下用kazam软件录制的视频不能在windows系统下播放的解决方案 (2)ht ...

  4. 【Qt开发笔记】Windows(VS2015或Mingw)环境编译Marble地图库

    Windows(VS2015+Qt或Mingw+Qt)环境编译Marble开源地图库 0.Mable介绍与源码下载 1.VS2015编译Marble 2.Mingw编译Marble 0.Mable介绍 ...

  5. 【开发工具】Windows环境下 IDEA 开发工具安装配置(无错完整)

    目录 一.开发工具下载: 二.IDE统一管理工具: 三.IDEA配置: 设置主题: 设置代码颜色: 设置编译字符编码(全部设置为UTF-8): 开启模糊匹配: 设置背景壁纸: 自动导包移包: 方法分割 ...

  6. 【开发环境】Windows环境下Python开发环境 Pycharm Anaconda安装配置(无错完整)

    目录 一.Python解释器: 1.官网下载解释器: 2.安装Python 解释器: 手动配置环境变量: 二.Pycharm 集成开发环境: 1.Pycharm官网下载: 2.Pycharm本地安装: ...

  7. Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)

    Windows环境下32位汇编语言程序设计(典藏版)(含CD光盘1张)(畅销10年,经典再现!) 罗云彬 著 ISBN 978-7-121-20759-4 2013年7月出版 定价:99.00元 75 ...

  8. ZED2i相机使用环境搭建(Windows 环境下 C#API)

    ZED2i相机使用环境搭建(Windows 环境下 C#API) 本文记录了ZED2i相机在Windows 环境下使用 C#API环境搭建过程,以及出现"无法加载 DLL"sl_z ...

  9. C++:Windows环境下基于Eclipse配置C/C++开发环境

    C++:Windows环境下基于Eclipse配置C/C++开发环境 目录 Windows下的MinGW下载.安装和配置 1.MinGW下载 2.MinGW安装与配置 3.基于Eclipse配置 Wi ...

最新文章

  1. iOS蓝牙开发---CoreBluetooth[BLE 4.0] 初级篇[内附Demo地址]
  2. 链表类型题目需要用到的头文件list.h
  3. influxdb java spring_Spring boot使用influxDB总结
  4. fuzz系列之libfuzzer
  5. DeepEarth中的拖放行为(DragBehavior)
  6. return 和 方法的递归调用
  7. this、new、模式工厂、创建新的构造函数
  8. ubantu 安装杀毒软件 clamav
  9. xftp提示过期的解决方法
  10. Python学习:字典
  11. boost::hana::slice用法的测试程序
  12. web前端教程:css实现容器高度适应屏幕高度
  13. (function($){...})(jQuery)是什么意思 ——jQuery插件
  14. 《数字金融消费者权益保护实践与探索》正式发布
  15. 漏洞扫描工具有哪些_5.4k Star!简单又全面的容器漏洞扫描工具:Trivy
  16. JavaScript中函数式编程的原理
  17. 专业的现场调音机架软件 - Deskew Technologies Gig Performer 4 Mac
  18. 最大生成树算法matlab,基于最大生成树的社团划分算法
  19. px和毫米的换算_像素跟毫米换算(像素和毫米换算器)
  20. SIM卡电气特性详解

热门文章

  1. 10100java压力测试_3DMark新增压力测试 你的电脑可靠?得先过这关
  2. 蜂鸟E203硬件 RV-STAR和Nuclei DDR200T和MCU200T比较
  3. win10装sql2000卡在选择配置_win10系统安装SQL2000卡在MADC不动的解决方法
  4. 产品设计--七大定律
  5. 蔡明亮 “水”三部曲
  6. 超实用后台UI模板有这些就够了!(一)
  7. 网工知识角-思科华为的网络工程师常用工具盘点
  8. java读取带格式word文档_Java读取word文档解决方案
  9. 未点击安全退出直接拔出u盘文件丢失恢复图文教程
  10. 2021网站泛目录源码系统疯狂收录超快排名放在二级目录即可