1
下载mysql C链接库
选择C的链接库
2
将C的连接库解压到到C:/mysql 目录下
3
我的QT 安装在C盘目录下,版本号是4.8.6 所以打开目录
C:\QT\4.8.6\src\plugins\sqldrivers\mysql
4
将C:/mysql/lib/libmysql.dll 和C:/mysql/lib/libmysql.lib
复制到此处。
5
编辑目录下的mysql.pro文件
添加
INCLUDEPATH+="C:/mysql/include"
LIBS+="C:/mysql/lib/opt/libmysql.lib"
运行qt的控制台窗口,方便使用qmake
切换到目录下
C:\QT\4.8.6\src\plugins\sqldrivers\mysql
执行qmake
运行VS2010的控制台工具
切换到
C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目录下
执行nmake 和nmake release
是nmake不是make
这样在C:\QT\4.8.6\src\plugins\sqldrivers\mysql 目录下的debug 目录和release 目录下分别会产生
qsqlmysqld4.dll qsqlmysqld4.lib
qsqlmysql4.dll qsqlmysql4.lib
将上面提到的四个文件复制到
C:\QT\4.8.6\plugins\sqldrivers
最后把
C:\mysql\lib\opt\libmysql.dll
C:\mysql\lib\opt\libmysql.lib
复制到
C:\Windows\system32\ 目录下。
最后测试mysql 可不可以在qt中正常使用
新建一个qt 控制台项目
输入以下代码
#include <QCoreApplication>
#include <QDebug>
#include <qstring.h>
#include <qstringlist.h>
#include <qsql.h>
#include <qsqldatabase.h>int main(int argc, char *argv[])
{
QCoreApplication a(argc, argv)
qDebug() <<"Available drivers:"
QStringList drivers = QSqlDatabase::drivers()qDebug() <<driversreturn a.exec()
}
运行测试一下,看看有没有图片中红圈圈中的两项内容
我在学习qt mysql的时候网上搜索资料,好不容易编译出来mysql
可是 我把编译的dll复制到对应目录下 运行后提示:不能加载
后来终于知道是为什么了
因为编译好了,把编译成功的dll放在
D:\Qt\Qt5.0.1\5.0.1\mingw47_32\plugins\sqldrivers 这个目录下 还不行的
还有一个步骤
就是把你安装的mysql 也就是 E:\xampp\mysql\lib 这个目录下的 libmysql.dll 这个文件复制到 D:\Qt\Qt5.0.1\5.0.1\mingw47_32\bin 这个目录
然后测试 就可以正常运行了
为什么要这样一个步骤,我想你编译的dll需要依赖mysql官方的那个libmysql.dll 所以 ,你需要复制过去
大概的步骤是:
1.下载mysql最新版本,安装的时候选择全部安装,否则你安装的mysql里没有对应的c++文件 【也就是没有E:\xampp\mysql\lib 和 E:\xampp\mysql\include 这2个目录】 这2个目录是很重要的
2.下载qt官方的qt源码,【如果你下载的qt的安装版,默认是没有源码的,你需要去qt官方再次下载一个源码http://qt-project.org/downloads】
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)