Qt for Windows:Qt 5.5 MinGW 静态编译版本制作带Mysql

看到网上很多人都在求Qt静态编译带Mysql,包括我自己在内也是google了N多资料才搞定,正所谓滴水之恩当涌泉相报,没有网上各位网友的帖子我至今还是懵懵懂懂,所以这里我就整理下,希望对大家有所帮助

使用环境:win10Pro  配置时关闭了杀软,包括win Defender

流程规划:

  1. 下载安装必须组件  qt5.5 perl python mysql  etc.
  2. 安装qt 5等组件Mysql库的转换
  3. 编译安装
  4. 配置
  5. 使用
  • 安装
  1. Qt5安装包 这里Mingw版本:

下载地址:http://download.qt.io/official_releases/qt/5.5/5.5.1/qt-opensource-windows-x86-mingw492-5.5.1.exe

安装过程很简单,有一点是安装的时候把source勾选上就好。

  • 编译器配置

打开C:\Qt\Qt5.5.0\5.5\mingw492_32\mkspecs\win32-g++文件夹编辑qmake.conf

找到 QMAKE_LFLAGS 和 QMAKE_LFLAGS_DLL 然后将后面都改成 -static  这样静态编译后生成的文件就不需要动态依赖库了

2. 然后是Perl和Python的安装:

地址:http://downloads.activestate.com/ActivePerl/releases/5.20.1.2000/ActivePerl-5.20.1.2000-MSWin32-x64-298557.msi

https://www.python.org/ftp/python/3.4.4/python-3.4.4.msi

把Python的环境变量(Path)添加好C:\Python27;Perl正常会自动添加,如果没有手动添加环境变量

3. MySql安装:注意mysql安装不要有空格或中文,因为Qt编译时会出问题

我这里选择安装到D:\Mysql https://dev.mysql.com/get/Downloads/MySQL-5.5/mysql-5.5.49-win32.msi

最后下载两个转换工具reimp和dlltool https://yunpan.cn/cPgMhxUAI29Mm  访问密码 3e31下载后把其放到d:\mysql\lib目录中

  • 编译&准备:

首先进行Mysql库文件转换,因为Mingw是Linux格式库,而Mysql里的是Windows格式库。

从开始菜单打开 Qt 5.5 for Desktop命令行

首先切换到Mysql目录:

reimp -d libmysql.lib
dlltool -k -d libmysql.def -l libmysql.a

然后如上操作进行转换,转换完成后会生成所需文件libmysql.def  libmysql.a  etc.

切换到源码目录

然后进行Configure

配置:

Configure.bat -confirm-license -opensource -platform win32-g++ -mp -release -static -prefix "c:\Qt\5.5_static" -qt-sql-mysql -l mysql -I d:\Mysql\include -L d:\Mysql\lib -qt-sql-sqlite -qt-zlib -qt-libpng -qt-libjpeg -opengl desktop -qt-freetype -no-qml-debug -no-angle -nomake tests -nomake examples -skip qtwebkit -skip qtwebengine

编译:

 mingw32-make -s

这里是单线程不提示,没办法电脑配置不行所以单线程及不输出,好像这样会快很多  等吧  等吧。。。。。

安装:

mingw32-make install
  • 添加Qt版本

打开Qt Creator -> 工具 -> 选项 -> 构件和运行 -> Qt Versions

设置构建套件:

  • 测试

没什么问题 这个时候就编译完成了  大家可以测试下是否Mysql静态编译成功

运行前把libmysql.dll放到项目生成文件夹下或windows system32里

//.pro 文件里添加QT+=sql
#include <QtCore/QCoreApplication>
#include <QtSQL>
 
int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    qDebug() << QSqlDatabase::drivers();
    return a.exec();
}

大功告成。。。

时间: 2024-10-29 04:35:58

Qt for Windows:Qt 5.5 MinGW 静态编译版本制作带Mysql的相关文章

在Windows下使用MinGW静态编译Assimp

使用MinGW静态编译Assimp 到了5月份了,没有写一篇日志,于是自己从知识库里面拿出一篇文章充数吧.这次将要讲解如何在Windows下使用MinGW静态编译Assimp. Assimp是目前比较全的3D格式解析库了,熟悉3D游戏开发的同行都知道,3D的格式非常混乱,各种3D格式在不同场合都有他们特定的应用,游戏引擎只能够解析少部分3D格式,更多实用的格式来自游戏公司自定义的格式.而在开源领域,Assimp算是比较全的3D格式导入库了.它对3D格式理解深入,很适合整合至3D图形引擎中,让你们

用mingw静态编译Qt4.8.2和Qt5.1.1(需要修改不少源码)

因为一些乱七八糟的原因,我需要用mingw静态编译Qt4.8.2和Qt5.1.1.经历了一天的折腾之后,自觉编译一下Qt还是件颇为麻烦的事情,故将过程略作总结,以备不时之需. 首先,在编译之前,我需要下载mingw.qt-everywhere-opensource-src-4.8.2和qt-everywhere-opensource-src-5.1.1. 然后,准备开始编译了,当然先得把压缩包解压到一个合适的地方.我这里的路径是"C:\Qt"下面. 解压完毕后,先试着编译Qt4.8.2

qt4.8.5 qtwebkit 静态编译 版本

2013年就编译好了,qtwebkit是最不好编译的了,尤其是静态编译,这儿分享给大家 估计总有人会用得到... 静态库下载地址:http://yunpan.cn/cyyNqrApbVDwq  提取码 eb64 静态qtwebkitdemo:http://yunpan.cn/cyt9DtmPEkW6j  提取码 dd42 作者:混沌游侠 qq:414713276 博客地址:http://www.cnblogs.com/wallini/p/4222438.html 来自为知笔记(Wiz)

在Windows环境下使用MinGW编译Qt 4.8.6

1.修改环境变量工具推荐:Rapid Environment Editor.官网:http://www.rapidee.com/ 修改前请先备份当前的环境变量.然后: (1)检查系统变量path,删除有关mingw其他版本等信息,以免与后续的mingw32-make冲突. (2)检查用户变量INCLUDE.LIB.PATH.MSDevDir和MSVCDir,删除有关\Microsoft Visual Studio\VC98的信息,因为它们会与后续的mingw32-make冲突,导致编译出错. 2

静态编译OpenSSL并整合到Qt

静态编译OpenSSL并整合到Qt 来源 https://blog.csdn.net/lixiaoxin1989/article/details/78421573 MSVC版本: 1. 下载OpenSSL源码 1.1 下载OpenSSL的源码:https://www.openssl.org/source/ 1.2 解压到C:\openssl-1.0.2l 2. 编译OpenSSL源码 2.1 打开VS的命令工具: 32位: 64位: 2.2 使用cd命令定位到源码文件夹: cd C:\opens

Linux下静态编译Qt程序

一般情况下,我们用Qt编译出来的程序是要依赖于系统Qt库的,也就是这个程序移到别的没有安装Qt库的系统上是不能使用的.会提示缺少……库文件之类的错误.这就是动态编译的结果. 但是如果我们想编译一个程序,这个程序在发给别人后,他们可以直接打开,而不需要特别地去先安装Qt库,那就需要采用静态编译了. 在Linux下如何静态编译Qt程序呢? 首先需要先安装静态编译的Qt,也就是静态编译Qt程序首先是需要一个静态编译安装的Qt   1.下载源安装程序,如 qt-x11-opensource-src-4.

QT中如何使用MYSQL 以及静态编译QT中如何加上MYSQL(2)

接上一篇的续写: 前文提到"最终写一个demo的my sql工程  发现可以成功运行,但是找不到 创建的数据库文件 原因再查找" 注意 上面这个问题对应的代码是如下的: #include <QDebug> #include <QSqlDatabase> #include <QSqlQuery> #include "mainwindow.h" #include "ui_mainwindow.h" MainWind

Qt5.4静态编译方法

静态编译,就是编译器在编译可执行文件的时候,将可执行文件需要调用的对应动态链接库(.so或.lib)中的部分提取出来,链接到可执行文件中去,使可执行文件在运行的时候不依赖于动态链接库.这样就可以发布单一文件的EXE程序了. 工具/原料 Qt库 Python Perl Ruby 安装Perl 1 双击从官网下载的安装包进入安装界面 2 安装时注意选择这两项 安装Python 1 双击从官网下载的安装包进入安装界面 2 安装完成后,需要将安装目录添加到系统环境变量Path中 安装Ruby 1 双击从

Linux下编译静态MinGW环境,编译windows平台Qt程序(使用MXE)

参考链接: MXE.>大多数程序都是在windows平台下开发的程序.windows 在现实中也是绕不过的一个系统平台,做为受过几年VC,MFC”虐待”的程序员,在做为一个程序员之前是一位Linux重度使用者,受够了MFC之后一直想要找一个框架替换,使用过GTK,wxWidgets,Qt,最后还是Qt用得多一些.我认为程序跨平台应该是一个基本标准,同一份代码不需改动,或者改动极少,放在不同的平台下编译就能使用.不同平台,同样的界面,同样的操作,同样的体验.这里要讲的是我如何在Linux 下开发跨