Qt使用msvc编译MySQL驱动
2012-04-14 18:22
399 查看
经过近一天的折腾,终于搞定了MySQL驱动的编译,使用的是msvc的编译器,真是很麻烦,网上找了很多资料,都是针对mingw的(这个应该很简单,下周折腾吧,没精力了)。使用msvc来编译,对着教程都不能成功,各种各样的错误,不断的重装……今天写出来我遇到的问题及解决方法,希望遇到这些问题的朋友不用再心力交瘁了,呵呵……
我使用的是Qt 4.8.1和MSVC2010,首先下载:
1.Qt libraries 4.8.1 for Windows (VS 2010, 235 MB)
2.下载Mysql,并全部安装(我用的是5.5.22-win32),要保证安装目录里有include和lib文件夹
开始工作:
1.将include和lib文件夹拷出来放到没有空格的路径中,比如我的是在D盘根目录。
2.lib\libmysql.dll拷到system32文件夹里,为了防止报错
3.使用命令提示符进入qt源文件目录,比如我的:D:\Qt\4.8.1\src\plugins\sqldrivers\mysql
4.执行:qmake –o Makefile INCLUDEPATH+="D:\include" LIBS+="D:\lib\libMySQL.lib" MySQL.pro (INCLUDEPATH是你的MySQL的include文件路径,LIBS是你lib所在目录)
5.这是D:\Qt\4.8.1\src\plugins\sqldrivers\mysql目录里应该生成了响应文件,如下:
![](http://pic002.cnblogs.com/images/2012/364754/2012041418053464.jpg)
6.打开开始菜单中Qt源文件目录的Command Prompt
![](http://pic002.cnblogs.com/images/2012/364754/2012041418082258.jpg)
7.执行nmake命令
8.如果提示以下错误
![](http://pic002.cnblogs.com/images/2012/364754/2012041418094845.jpg)
打开D:\Qt\4.8.1\src\sql\drivers\mysql中的qsql_mysql.h文件,修改第52行,将
#include <mysql.h>修改为mysql.h所在的目录,比如我的在D盘,修改为#include <D:\include\mysql.h>,然后保存。
9.继续nmake,继续出错
![](http://pic002.cnblogs.com/images/2012/364754/2012041418133523.jpg)
将D:\lib\libmysql.lib复制到s2010的目录,如:D:\Program Files\Microsoft Visual Studio 10.0\VC\lib
10.继续执行nmake,成功了,再执行nmake release,又成功了。这时D:\Qt\4.8.1\src\plugins\sqldrivers\mysql\release和debug目录如下
![](http://pic002.cnblogs.com/images/2012/364754/2012041418175173.jpg)
![](http://pic002.cnblogs.com/images/2012/364754/2012041418180057.jpg)
出现我们需要的驱动啦!将下面四个文件拷到D:\Qt\4.8.1\plugins\sqldrivers里就可以了
![](http://pic002.cnblogs.com/images/2012/364754/2012041418200592.jpg)
虽然就这么几步简单的东西,耗费了我很长的时间,总有不可预料的错误产生,下次再来试下Mingw编译。
我使用的是Qt 4.8.1和MSVC2010,首先下载:
1.Qt libraries 4.8.1 for Windows (VS 2010, 235 MB)
2.下载Mysql,并全部安装(我用的是5.5.22-win32),要保证安装目录里有include和lib文件夹
开始工作:
1.将include和lib文件夹拷出来放到没有空格的路径中,比如我的是在D盘根目录。
2.lib\libmysql.dll拷到system32文件夹里,为了防止报错
3.使用命令提示符进入qt源文件目录,比如我的:D:\Qt\4.8.1\src\plugins\sqldrivers\mysql
4.执行:qmake –o Makefile INCLUDEPATH+="D:\include" LIBS+="D:\lib\libMySQL.lib" MySQL.pro (INCLUDEPATH是你的MySQL的include文件路径,LIBS是你lib所在目录)
5.这是D:\Qt\4.8.1\src\plugins\sqldrivers\mysql目录里应该生成了响应文件,如下:
![](http://pic002.cnblogs.com/images/2012/364754/2012041418053464.jpg)
6.打开开始菜单中Qt源文件目录的Command Prompt
![](http://pic002.cnblogs.com/images/2012/364754/2012041418082258.jpg)
7.执行nmake命令
8.如果提示以下错误
![](http://pic002.cnblogs.com/images/2012/364754/2012041418094845.jpg)
打开D:\Qt\4.8.1\src\sql\drivers\mysql中的qsql_mysql.h文件,修改第52行,将
#include <mysql.h>修改为mysql.h所在的目录,比如我的在D盘,修改为#include <D:\include\mysql.h>,然后保存。
9.继续nmake,继续出错
![](http://pic002.cnblogs.com/images/2012/364754/2012041418133523.jpg)
将D:\lib\libmysql.lib复制到s2010的目录,如:D:\Program Files\Microsoft Visual Studio 10.0\VC\lib
10.继续执行nmake,成功了,再执行nmake release,又成功了。这时D:\Qt\4.8.1\src\plugins\sqldrivers\mysql\release和debug目录如下
![](http://pic002.cnblogs.com/images/2012/364754/2012041418175173.jpg)
![](http://pic002.cnblogs.com/images/2012/364754/2012041418180057.jpg)
出现我们需要的驱动啦!将下面四个文件拷到D:\Qt\4.8.1\plugins\sqldrivers里就可以了
![](http://pic002.cnblogs.com/images/2012/364754/2012041418200592.jpg)
虽然就这么几步简单的东西,耗费了我很长的时间,总有不可预料的错误产生,下次再来试下Mingw编译。
相关文章推荐
- Win7使用Visual Studio 2010编译用于Qt4.8.6的MySQL驱动
- 使用mingw32编译QT下mysql驱动的流程
- QT使用MySql的配置(使用addLibraryPath载入插件),编译QT的MySql驱动问题及解决方案(自己使用libmysql.lib进行编译mysql.pro,万不得已可以查看Makefile.Debug以解决问题)
- Qt5 不编译MySQL驱动也一样可以使用
- windows下Qt5.6.0 编译Mysql驱动,并使用。
- Qt5.4编译mysql驱动
- [QT] QT编译mysql驱动
- Windows下编译Qt的Mysql驱动
- Qt编译mysql驱动
- qt4.8编译MYSQL 驱动
- Qt编译MySql5.7.17驱动
- Qt5.1.0 下编译生成Mysql驱动
- QT编译mysql驱动
- Qt编译mysql驱动
- Windows下编译Qt的Mysql驱动(详细测试可用)
- QT-VS2008-MYSQL驱动编译
- linux 编译QT的mysql驱动
- 编译Qt的MySql驱动
- 在VS2010中集成QT + Qt4.8.2编译MYSQL驱动
- 转:eclipse+mingw+qt编译MySQL驱动的步骤