Qt5.14.2编译mysql 驱动
编译的时候需要注意如果你的mysql是32位的就用32位的编译器,64位的就用64位,且如果你用的什么编译器后面生成的dll文件只能给对应的编译器使用.然后找到你pro文件中指定生成dll文件的目录把qsqlmysql.dll和qsqlmysqld.dll复制到编译时的编译器的\plugins\sqldrivers的目录下,例如我用的msvc_64我就放在。首先得确保自己已经安装mysql以及Qt
首先得确保自己已经安装mysql以及Qt安装目录中是否有src源码目录
如没有请自行安装,然后进入到Qt的安装目录下这是我的安装目录D:\QT\5.14.2\Src\qtbase\src\plugins\sqldrivers\mysql
然后就是启动pro文件
修改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
include(../qsqldriverbase.pri)
#该路径是刚才下载解压备用的mysql的头文件路径
INCLUDEPATH +="C:/Program Files/MySQL/MySQL Server 8.0/include"
#该路径是刚才下载解压备用的mysql的库文件路径
LIBS +="C:/Program Files/MySQL/MySQL Server 8.0/lib/libmysql.lib"
#为了方便查找将来编译好的库文件,添加这个语句用来指明编译后的结果输出的位置
DESTDIR = "D:/QT/5.14.2/Src/qtbase/src/plugins/sqldrivers/mysql/lib/"
头文件和目录从替换成自己的mysql中的头文件路径和libmysql.lib的路径,需要注意需要将QMAKE_USE那行注释,DESTDIR = "替换为你自己项目编译后的驱动存放文件路径"
然后就是pri文件按这修改就行
QT = core core-private sql-private
# For QMAKE_USE in the parent projects.
#include($$shadowed($$PWD)/qtsqldrivers-config.pri)
include(./configure.pri)
PLUGIN_TYPE = sqldrivers
load(qt_plugin)
DEFINES += QT_NO_CAST_TO_ASCII QT_NO_CAST_FROM_ASCII
编译的时候需要注意如果你的mysql是32位的就用32位的编译器,64位的就用64位,且如果你用的什么编译器后面生成的dll文件只能给对应的编译器使用.然后找到你pro文件中指定生成dll文件的目录把qsqlmysql.dll和qsqlmysqld.dll复制到编译时的编译器的\plugins\sqldrivers的目录下,例如我用的msvc_64我就放在
最好将mysq了目录下lib目录下的libmysql lib和libmysql.dll复杂到编译器下的bin目录下
如果显示已有MySQL驱动但是不能加载,那就是刚才一步少复制文件了

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐
所有评论(0)