00. 目录

 

 

01. 安装Qt5.9

安装Qt5.9的时候选择Qt的编译器Qt源码
【Qt】Qt5.9编译MySQl5.7驱动_Qt5.9编译MySQL驱动

02. 打开MySQL源码项目

Qt的安装目录下:

Qt5.9\5.9.7\Src\qtbase\src\plugins\sqldrivers\mysql

【Qt】Qt5.9编译MySQl5.7驱动_Qt5.9编译MySQL驱动_02

03. 编译MySQL驱动代码

代码结构:

【Qt】Qt5.9编译MySQl5.7驱动_mysql_03

编译报错: 数据库驱动没有定义

【Qt】Qt5.9编译MySQl5.7驱动_MySQL5.7驱动_04

问题分析: 由于没有指定MySQL动态库的路径

04. 修改mysql.pro文件

修改之后内容如下:

TARGET = qsqlmysql

HEADERS += $$PWD/qsql_mysql_p.h
SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp

#QMAKE_USE += mysql

OTHER_FILES += mysql.json

PLUGIN_CLASS_NAME = QMYSQLDriverPlugin

win32:LIBS += -LD:/mysql-5.7.23-win32/lib/ -llibmysql
INCLUDEPATH += D:/mysql-5.7.23-win32/include
DEPENDPATH += D:/mysql-5.7.23-win32/include

#指定MySQL对应的库
#QMAKE_LFLAGS +=D:\mysql-5.7.23-win32\lib\libmysql.dll
#LIBS+=D:\mysql-5.7.23-win32\lib\libmysql.lib

include(../qsqldriverbase.pri)

【Qt】Qt5.9编译MySQl5.7驱动_Qt5.9编译MySQL驱动_05

05. 编译之后得到对应的库

我的Qt安装的路径:H:\other\Qt5.9\5.9.7

最终得到的驱动目录就在H盘

【Qt】Qt5.9编译MySQl5.7驱动_Qt5.9编译MySQL驱动_06

将qsqlmysql.dll和qsqlmysqld.dll拷贝到Qt的安装目录下H:\other\Qt5.9\5.9.7\mingw53_32\plugins\sqldrivers

【Qt】Qt5.9编译MySQl5.7驱动_libmysql.dll_07

libmysql.dll动态库下载:

或者
链接:https://pan.baidu.com/s/1S3X99S4WOtEW9Adq157odQ
提取码:xz1d

将libmysql.dll拷贝到

【Qt】Qt5.9编译MySQl5.7驱动_Qt5.9编译MySQL驱动_08

最后Qt连接MySQL数据库Ok