1. 生成mingw使用的mysql的libmysql.a文件
2. qmake生成mysql.pro文件
3. 把includepath和libs的內(nèi)容加入到mysql.pro文件
4. make, make release 生成mysql的驅(qū)動文件
5. 復(fù)制生成的驅(qū)動文件到qt的數(shù)據(jù)庫驅(qū)動文件夾
6. 復(fù)制mysql的lib/libmysql.dll到qt的bin文件夾

因為這里我們使用MinGW來編譯驅(qū)動,mysql提供的這個libmysql.lib我們還不能直接用(如果用微軟的編譯器就不用這樣了),我們需要用個工具轉(zhuǎn)成*.a來用。
工具下載: http://www.qtcn.org/download/mingw-utils-0.3.tar.gz
解壓我們只用remip.exe這個東西,把他放在你的mingw/bin和那些make.exe放一起就行。
cd C:/mysql/lib
reimp -d libmysql.lib (生成 libmysql.def文件)
dlltool -k -d libmysql.def -l libmysql.a (生成 libmysql.a文件)

over了,出來這2個東西了。

好了需要的libmysql.a準(zhǔn)備好了
下面開始編譯之旅:
來到qt mysql驅(qū)動的源程序目錄,有個cpp文件和一個qt項目文件。

cd %QTDIR%/src/plugins/sqldrivers/mysql (當(dāng)前目錄轉(zhuǎn)到源程序目錄)
qmake -o Makefile "INCLUDEPATH+=C:/mysql/include" "LIBS+=C:/mysql/lib/libmysql.a" mysql.pro
(如果你的mysql安裝在其他地方,如果路徑上有空格之類的,直接復(fù)制include和lib目錄到C盤根目錄下的mysql目錄好了,方便一會寫路徑。)
接下來的步驟很關(guān)鍵,開始的時候沒有使用下面的方式,弄了很久都不行。
在剛剛生成的mysql.pro中加入以下:
INCLUDEPATH+="C:/mysql/include"
LIBS+="C:/mysql/lib/libmysql.lib"
HEADERS =../../../sql/drivers/mysql/qsql_mysql.h
SOURCES = main.cpp\
../../../sql/drivers/mysql/qsql_mysql.cpp
然后
make
make release
至此在debug和release目錄里生成了下面的這四個文件


復(fù)制上面的這4個文件到qt的plugins/sqldrivers目錄:例如我的:C:/QtSDK/Desktop/Qt/4.7.4/mingw/plugins/sqldrivers
同時也要把mysql/lib/libmysql.dll這個文件復(fù)制到qt的bin目錄:例如我的:C:/QtSDK/Desktop/Qt/4.7.4/mingw/bin
From: http://xcf007.blog.51cto.com/471707/672917, http://hi.baidu.com/bodogbo/blog/item/e1ac85d156a88c1b3bf3cf76.html