天天看點

qt連接配接mysql4.7資料庫_QT4.7通路MySQL的驅動編譯過程

我們假設你已經成功安裝了MySQL(我用的是MySQL的安裝版)和QT,MySQL的安裝路徑采用的是其預設安裝路徑,也就是安裝在了C:\Program Files下。下面開始正式講解QT通路安裝版MySQL的驅動的編譯方法。

第一步:

因為MySQL的安裝路徑下有空格,而編譯通路MySQL的驅動是不能有空格的,是以,我們先在C槽建立一個檔案夾,命名為mysql,再将MySQL安裝檔案下的lib和include檔案夾拷貝到剛才建立的那個檔案夾下。

第二步:

打開打開QTCommand,我們可以看到起已經有一條預設路徑,(因為我的是安裝在D:\Qt檔案夾下,是以預設路徑為D:\Qt\4.7.3)

接着輸入cd  C:\mysq\lib轉到C:\mysq\lib庫檔案夾下

再輸入reimp -d libmysql.lib (生成 libmysql.def檔案)

接着輸入dlltool -k -d libmysql.def -l libmysql.a (生成 libmysql.a檔案),接着我們就可以看到出來了: libmysql.def  libmysql.a這兩個檔案。

第三步:

當我們準備好libmysql.a這個庫檔案之後,我們就可以開始編譯之旅了。

我們輸入cd %QTDIR%/src/plugins/sqldrivers/mysql,跳轉到QT4.7的安裝目錄下的src/plugins/sqldrivers/mysql檔案夾下(我的是D:\Qt\4.7.3\src\plugins\sqldrivers\mysql)

接着輸入qmake -o Makefile "INCLUDEPATH+=C:/mysql/include" "LIBS+=C:/mysql/LIB/libmysql.a" mysql.pro

(此處特别小心,該路徑指向的是我們自己在C槽建立的那個mysql檔案夾,且libmysql.a得注意大小寫的問題,否則會不成功),此時,我們得到了makefile,

接着輸入make,此時D:\Qt\4.7.3\src\plugins\sqldrivers\mysql下的debug檔案夾裡邊出現調試版本的了,也就是libqsqlmysqld4.a 和 qsqlmysqld4.dll

接着輸入make release , 此時D:\Qt\4.7.3\src\plugins\sqldrivers\mysql下的release檔案夾裡邊出現了release版本,也就是libqsqlmysql4.a 和 qsqlmysql4.dll

接着我們把生成的libqsqlmysqld4.a  qsqlmysqld4.dll  libqsqlmysql4.a  qsqlmysql4.dll 四個檔案拷貝到QT的驅動目錄下,即D:\Qt\4.7.3\plugins\sqldrivers目錄下

最後我們再把mysql安裝目錄下lib檔案中的libmysql.dll拷貝到QT安裝目錄下的bin檔案夾中(否則會無法打開與資料庫的連接配接)。

在文章的最後,可能會有一部分使用MyEclipse/Eclipse的人在使用QT時也去右鍵單擊再添加庫,最後安裝以上方法編譯成功了,該拷貝的也拷貝了,可就是會出現File Not Found的錯誤的,隻需要在pro檔案的最後,把因為右鍵單擊添加庫檔案而自動增加的那幾行代碼删除就OK了。