欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

编译QT的mysql驱动

程序员文章站 2022-06-04 13:36:01
...

1. 安装mysql的时候一定要安装"Libs & Include Files"的开发者模块

2. 设置环境变量

PATH
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Qt\4.5.0\bin;C:\Program Files\Microsoft Visual Studio 8\VC\bin;C:\Program Files\Microsoft Visual Studio 8\Common7\IDE

分别是以下几个目录:

%SystemRoot%\system32;
%SystemRoot%;
%SystemRoot%\System32\Wbem;
C:\Program Files\Microsoft SQL Server\90\Tools\binn\;
C:\Qt\4.5.0\bin;
C:\Program Files\Microsoft Visual Studio 8\VC\bin;
C:\Program Files\Microsoft Visual Studio 8\Common7\IDE



INCLUDE
C:\Program Files\Microsoft Visual Studio 8\VC\include;C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\INCLUDE;C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include;C:\Qt\4.5.0\include\QtCore;C:\Program Files\MySQL\MySQL Server 5.1\include

分别是以下几个目录

C:\Program Files\Microsoft Visual Studio 8\VC\include;
C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\INCLUDE;
C:\Program Files\Microsoft Visual Studio 8\VC\INCLUDE;
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\include;
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\include;
C:\Qt\4.5.0\include;
C:\Program Files\MySQL\MySQL Server 5.1\include

LIBPATH
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB
分别是以下几个目录

C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;
C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB


LIB
C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB;C:\Program Files\Microsoft Visual Studio 8\VC\LIB;C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib;C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;C:\Program Files\MySQL\MySQL Server 5.1\lib\debug;C:\Program Files\MySQL\MySQL Server 5.1\lib\opt

分别是以下几个目录:

C:\Program Files\Microsoft Visual Studio 8\VC\ATLMFC\LIB;
C:\Program Files\Microsoft Visual Studio 8\VC\LIB;
C:\Program Files\Microsoft Visual Studio 8\VC\PlatformSDK\lib;
C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\lib;
C:\Program Files\MySQL\MySQL Server 5.1\lib\debug;
C:\Program Files\MySQL\MySQL Server 5.1\lib\opt

 

3. 为防止中文乱码,修改mysql驱动的源代码 C:\Qt\4.5.0\src\sql\drivers\mysql\qsql_mysql.cpp
修改codec函数,修改后为:

static QTextCodec* codec(MYSQL* mysql)
{
  return QTextCodec::codecForName("GBK");
#if MYSQL_VERSION_ID >= 32321
  QTextCodec* heuristicCodec = QTextCodec::codecForName(mysql_character_set_name(mysql));
  if (heuristicCodec)
    return heuristicCodec;
#endif
  return QTextCodec::codecForLocale();
}
 

 

4. 执行

cd C:\Qt\4.5.0\src\plugins\sqldrivers\mysql
qmake -o Makefile mysql.pro
nmake

如果成功就会在C:\Qt\4.5.0\plugins\sqldrivers目录下产生一系列文件:

qsqlmysql4.dll
qsqlmysql4.exp
qsqlmysql4.lib
qsqlmysqld4.dll
qsqlmysqld4.exp
qsqlmysqld4.ilk
qsqlmysqld4.lib
qsqlmysqld4.pdb