龙空技术网

Qt编译MySQL驱动

C加加Qt技术开发老杰 205

前言:

当前姐妹们对“mysql驱动程序lib在哪找”大约比较讲究,你们都想要知道一些“mysql驱动程序lib在哪找”的相关内容。那么小编同时在网摘上汇集了一些有关“mysql驱动程序lib在哪找””的相关资讯,希望咱们能喜欢,看官们一起来了解一下吧!

一、简述Qt默认没有MySQL驱动动态库,所以Qt开发时需要手动编译对应的MySQL驱动动态库。编译过程需要本地已经安装MySQL,安装对应路径有MySQL相关头文件。

环境

系统:Window10 64bitMySQL:mysql-5.6.24-win32(MySQL链接:)Qt:qt-opensource-windows-x86-5.12.12.exeVs:vs2017企业版二、动态编译Qt MySql驱动Qt安装时勾选Sources解压mysql-5.6.24-win32安装包,然后通过响应指令启动MySQL打开安装Qt的相应目录,例如:C:\Qt\Qt5.12.12\5.12.12\Src\qtbase\src\plugins\sqldrivers\mysql通过txt编辑器编辑mysql.pro

Qt资料领取→「链接」

编辑后结果:

   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-winx64/lib/ -llibmysql  INCLUDEPATH += D:/mysql-5.7.23-winx64/include  DEPENDPATH += D:/mysql-5.7.23-winx64/include  #上面的D:/mysql-5.7.23-winx64,是自己对应的MySQL目录    include(../qsqldriverbase.pri)  #需要添加最后这个include,否则提示:qtsqldrivers-config.pri no such file or directory
编译后驱动目录:C:\plugins\sqldrivers将libmysql.dll(这个动态库在MySQL的lib目录下)下载后复制到Qt的安装目录中E:\Qt\Qt5.12\5.12.0\mingw73_32\bin把生成目录C:\plugins\sqldrivers下面的动态库dll复制到“plugins\sqldrivers”目录(例如:C:\Qt\Qt5.12.12\5.12.12\msvc2017\plugins\sqldrivers)

测试验证:qt代码:

      qDebug() << QSqlDatabase::drivers();   
三、静态编译Qt MySql驱动

注意:静态编译Qt MySql驱动时,调用静态编译Qt环境的qmake。

第一步

源码包中目录:qtbase\src\plugins\sqldrivers\mysql

打开mysql.pro,对该文件进行修改:

   TARGET = qsqlmysql      CONFIG += static   HEADERS += $$PWD/qsql_mysql_p.h   SOURCES += $$PWD/qsql_mysql.cpp $$PWD/main.cpp   OTHER_FILES += mysql.json   include(../qsqldriverbase.pri)      PLUGIN_CLASS_NAME = QMYSQLDriverPlugin    INCLUDEPATH += D:/install/mysql-5.6.24-win32/mysql-5.6.24-win32/include  LIBS += -LD:/install/mysql-5.6.24-win32/mysql-5.6.24-win32/lib -llibmysql -lmysqlclient      #QMAKE_USE += mysql

目录说明:

本地MySql安装目录:D:/install/mysql-5.6.24-win32/mysql-5.6.24-win32/

第二步:

右键管理员运行cmd,运行命令(设置静态编译安装Qt目录):

   set PATH=C:\Qt\Static_Qt\Qt5.12.9_x86\bin;%PATH%

切换工作目录到Mysql源码目录:qtbase\src\plugins\sqldrivers\mysql

运行命令:qmake

生成Makefile

第三步

管理员打开Vs工具中的:x86 Native Tools Command Prompt for VS 2017

运行命令:nmake

编译安装:nmake install

第四步

Vs+Qt运行环境调用Mysql库时,需要在main.cpp添加下面代码

   #include <QtPlugin>   Q_IMPORT_PLUGIN(QWindowsIntegrationPlugin);   Q_IMPORT_PLUGIN(QMYSQLDriverPlugin);

注意:生成程序会提示没有“libmysql.dll”,需要把Mysql安装目录:D:\install\mysql-5.6.24-win32\mysql-5.6.24-win32\lib的对应的库文件加入生成程序目录。

文章转自博客园(mehome):

Qt资料领取→「链接」

标签: #mysql驱动程序lib在哪找