Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)
Posted 朝闻道
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)相关的知识,希望对你有一定的参考价值。
一步步在Window下开发Qt
今天开始安装MySQL,看了些关于mysql安装的博文,方法大致相同,但是遇到的细节问题各有不同,或者没有讲全面,下面来说说个人的安装过程及遇到的问题.
1、首先下载,MySQL官网下载地址:http://www.mysql.com/downloads/installer/
2、安装时,会提示安装.netFramework4环境,这里提供一个下载链接:http://dldx.csdn.net/fd.PHP?i=537939463366842&s=17682a85274604196d6c02560d3e410c,资料很好,感谢博主的分享~
3、按照提示一步步安装,我一开始选择的是Develop模式,http://blog.csdn.net/xw_hit/article/details/6127992上面讲,要选择Custom,后来改了回Custom模式,这里不是说Develop模式不行,其中缘由没有理解,也没尝试,这里还是先选Custom模式
4、安装完成后要设置环境变量,
我的电脑-属性-高级-环境变量-系统变量-path里添加:C:\Program Files\MySQL\MySQL Server 5.5\bin
5、编译Qt下mysql驱动,还需要下载一个动态库格式转换工具,网址为: http://www.qtcn.org/download/mingw-utils-0.3.tar.gz,解压后把里边bin目录里的remip.exe拷到mingw的bin目录里就可以使用了
- cd C:\Program Files\MySQL\MySQL Server 5.5\lib //这里有libmysql.dll 等文件,有的是在opt文件下,根据个人情况
- reimp -d libmysql.lib
- dlltool -k -d libmysql.def -l libmysql.a
这样编译后生成了libmysql.a文件,下面要进行编译qt下的mysql插件了
- cd %QTDIR%/src/plugins/sqldrivers/mysql
- qmake -o Makefile "INCLUDEPATH+=C:/INCLUDE" "LIBS+=C:/LIB/libmysql.a" mysql.pro //这里路径不能有空格,为了解决这个问题,个人是把C:\Program Files\MySQL\MySQL Server 5.5\下的lib和include文件拷贝到C:根目录下,这样编译才没有问题
- mingw32-make //生成libqsqlmysqld4.a 和 qsqlmysqld4.dll两个文件
把生成的libqsqlmysqld4.a 和 qsqlmysqld4.dll拷贝到QTDIR/plugins/sqldrivers/ 下。个人在这个地方捣腾了良久,最后看到一篇博文http://blog.csdn.net/xw_hit/article/details/6127992的最后一条,让我茅塞顿开、恍然大悟,O(∩_∩)O哈哈~,作者这样描述的(我只是修改了路径):
虽然生成成功,但是仍会提示QSqlDatabase: QMYSQL driver not loaded错误,这时我们需要将C:/MySQL/lib目录下的libmySQL.dll文件复制到我们Qt Creator安装目录下的qt/bin目录中。
http://blog.csdn.net/styyzxjq2009/article/details/8131917
以上是关于Window下 Qt 编译MySQL驱动(居然用到了动态库格式转换工具)的主要内容,如果未能解决你的问题,请参考以下文章
Ubuntu15.04下QT5.4编译配置MySQL5.6.26连接驱动