qt编译mysql
下载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() << drivers;return a.exec();
}
运行测试一下,看看有没有图片中红圈圈中的两项内容
② 【QT】编译mysql驱动出现问题
看起来你并不是要编译mysql库,而是要使用mysql库啊:
-llibmysql
然后接下来这两条信息是说没找到libmysql.dll文件:
c:/qt/mingw/bin/../lib/gcc/mingw32/4.4.0/../../../../mingw32/bin/ld.exe: cannot
find -llibmysql
collect2: ld returned 1 exit status
mingw32-make[1]: *** [..\..\..\..\plugins\sqldrivers\qsqlmysqld4.dll] Error 1
③ qt5.8 for mingw编译静态版本时怎么加mysql
注意编译器一定要和MYSQL的平台版本一致,32位的用32位的编译器编译,64位的用64位的编译器编译。
准备工作:MYSQL的目录:D:\SQL_Server\mariadb
Qt5.1.1的目录:C:\Qt
1. 先将D:\SQL_Server\mariadb中的include\和lib\文件夹复制到根目录(C:),因为后面make时路径不能有空格。
2. 打开QT5.1.1 for Desktop(MinGW 4.8)
cd C:\Qt\Qt5.1.1\5.1.1\Src\qtbase\src\plugins\sqldrivers\mysql
qmake "INCLUDEPATH+=D:\SQL_Server\mariadb\include" "LIBS+=D:\SQL_Server\mariadb\lib\libmysql.lib" mysql.pro
mingw32-make
如果出现找不到mysql.h文件就用qtcreator打开mysql.pro文件,配置项目,然后编译,就会出现错误提示,把#include 改成#include ,编译就行了,或回到命令行再次执行mingw32-make即可.
3. 编译成功后。
进入到C:\Qt\Qt5.1.1\5.1.1\Src\qtbase\plugins\sqldrivers目录下,选中qsqlmysql.dll和 qsqlmysqld.dll两个文件,
复制到C:\Qt\Qt5.1.1\5.1.1\mingw48_32\plugins\sqldrivers目录下。
④ QT编程,mysql驱动编译好了,为什么写测试连接数据库,总是打开数据库出错大侠帮忙啊
"test"是表名吧!你要填写数据库名称;mysql应该是默认就有的!
⑤ Qt 访问mysql
mysql.h确实不是qt的一部分,它是mysql的一部分,你应该是用qt的二进制安装包安装的,不是从源码编译的吧。在linux下你需要安装libmysqlclient,在windows下你安装mysql时就包含了这个文件,你需要的是在gcc的编译参数中增加"-I<mysql.h所在目录>",如果是qt,那么在。pro未见中增加一行INCLUDEPATH += <mysql.h所在目录>