编译mysql动态链接库解决QMYSQL driver not loaded问题

3 篇文章 0 订阅

qt初次开发mysql时,常会碰到QSqlDatabase: QMYSQL driver not loaded问题
原因是qt缺失qsqlmysql.dll 与qsqlmysqld.dll,解决方案是
通过源码编译出qsqlmysql.dll 与qsqlmysqld.dll

以下为64win7下用64位qt编译64位mysql动态链接库

一、安装mysql
mysql源码位于
你的qt安装目录\你的qt版本号\Src\qtbase\src\plugins\sqldrivers\mysql
一、安装mysql
1、官网下载:https://dev.mysql.com/downloads/file/?id=494993
mysql-8.0.20-winx64.zip
2、解压压缩包至C:/mysql
3、设置MYSQL_HOME环境变量
3.1MYSQL_HOME
计算机-》右键-》高级系统设置-》环境变量-》系统变量-》新建
在对话框中
变量名:MYSQL_HOME
变量值:C:\mysql\mysql-8.0.20-winx64
确定
3,2PATH
系统变量->Path->编辑
在变量名最前端:输入%MYSQL_HOME%%;
重启主机

二、编译qsqlmysql.dll 与qsqlmysqld.dll
1、找到mysql源码并用qt打开他
qt安装目录\当前qt版本号\Src\qtbase\src\plugins\sqldrivers\mysql
2、编辑mysql.pro文件
于文件下方添加如下三行
LIBS += $$(MYSQL_HOME)/lib/libmysql.lib
INCLUDEPATH += $$(MYSQL_HOME)/include
DEPENDPATH += $$(MYSQL_HOME)/include
3、项目->重构->Ctrl+b(编译)
4、找到编译后的文件
qt安装目录\当前qt版本号\Src\qtbase\src\plugins\sqldrivers\plugins\sqldrivers
找到刚刚编译出的4个文件
libqsqlmysql.a
libqsqlmysqld.a
qsqlmysql.dll
qsqlmysqld.dll

5、将qsqlmysql.dll与qsqlmysqld.dll复制添加到qt中
qt安装目录\当前qt版本号\mingw73_64\plugins\sqldrivers
6、重启qt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值