Win7下Qt 5.4/5.5版本 编译MYSQL驱动

文章内容摘自CSDN博客,感谢网友提供资料

QT编译MySQL驱动的时候遇到如下问题, 

 /tmp/cchl7IEh.o: In function `main':
test.c:(.text+0x22): undefined reference to `mysql_init'
test.c:(.text+0x4f): undefined reference to `mysql_real_connect'
test.c:(.text+0x65): undefined reference to `mysql_query'
test.c:(.text+0x76): undefined reference to `mysql_store_result'
test.c:(.text+0x87): undefined reference to `mysql_num_rows'

安装了64位win7的用户,在编译MYSQL驱动时如果下载的是MYSQL 64位的源码,就会出现  undefined reference to 'mysql_'  问题. 

删除C:\Qt5\5.5\Src\qtbase\src\plugins\sqldrivers\mysql 目录下之前编译生成的文件和文件夹(保留.cpp/.json/.pro文件), 重新下载MYSQL 32位源码进行编译即可.

. 附网上的变异步骤:

1. 安装Mysql 和 Qt
安装无需先后,先安装那个都可以, Mysql安装方法, 要选择自定义, 即 Custom, 之后选择文件夹,本人建议是C:\MySQL\, , 必须不能有空格, 因为在命令行下面空格就代表这一段命令结束, 之后就是 一直 next 就行了,

对于.zip版本的MYSQL,直接解压缩到C:\mysql 就可以了

Qt安装要勾选源码选项,有个source什么的的选项 ,一直Next就行了,我的QT路径是C:\Qt, 顺便 把源码解压出来吧,

2.重新编译Mysql驱动
添加环境变量, 当出现"找不到某文件"时,尝试添加MySQL 的lib和include目录到环境变量中.

打开 Qt 的命令行终端,点击开始菜单,Q5.4.0t,见下图


 输入 cd C:\qt-everywhere-opensource-src-5.4.0\qtbase\src\plugins\sqldrivers\mysql\    进到这个文件夹里面,

输入 qmake "INCLUDEPATH+=C:\MySQL\include" "LIBS+=C:\MySQL\lib\libmysql.lib" -o Makefile mysql.pro 生成makefile ,路经不能包含空格.

mingw32-make 进行编译 .

3.重新配置MySQL驱动
注意生成的 .dll文件在 qtbase \ plugins \ sqldrivers文件夹下

1.将 C:\%QT目录%\qtbase\plugins\sqldrivers  文件夹下面的  qsqlmysql.dll  和 qsqlmysqld.dll 复制到

    C:\%QT目录%\Qt5.4.0\5.4\mingw491_32\plugins\sqldrivers. 

如果此时还连接不上数据库,将C:\MySQL\MySQLServer5.5\lib\libmysql.dll  复制到 C:\Windows

尝试重新build项目,到此基本都能成功.


————————————————
版权声明:本文为CSDN博主「cxxcxx_」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cxxcxx_/article/details/48024147

然后: cd D:\Qt\Qt5.4.2\5.4\Src\qtbase\src\plugins\sqldrivers\mysql(这个路径因人而异)
然后运行以下命令:qmake "INCLUDEPATH+=D:\mysql\include" "LIBS+=D:\mysql\lib\libmysql.lib" -o Makefile mysql.pro
会生成一下目录:

然后接着运行一下命令:
这里需要注意下 如果你安装了VC6 需要把 VC98名字改掉,任意名字就好不是VC98
然后在运行一下命令: mingw32-make

等运行完后再运行命令:mingw32-make install

在5.4.2中最后这一步会把驱动直接放在Qt默认调用的目录中:D:\Qt\Qt5.4.2\5.4\mingw491_32\plugins\sqldrivers

现在剩下关键的一步:

现在只是把驱动搞定了mysql的目录中:  D:\mysql\lib\libmysql.dll 拷贝到c:\windows 下即可使用
————————————————
版权声明:本文为CSDN博主「独行黑鹰」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/duxingheiying1041/article/details/52489966

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值