天天看點

linux下編譯Qt驅動libqsqlmysql.so

             這裡我的Qt是安裝在預設的路徑/opt下。使用的系統是OpenSuSE12.3 64位,Qt的版本是5.3.1。這裡安裝Qt時,必須勾選源碼也安裝上。因為我們編譯驅動時,是使用源碼進行編譯的。

     安裝好Qt後,如果有設定Qt的環境變量的話,qt的qmake等指令不用加路徑。在這裡我會使用Qt指令的完整路徑。

      預設情況下:qmake在目錄下。不知道的話,使用 find / -name qmake進行查找,或用find /opt -name qmake進行查找。

      下面開始進行編譯:

       1、首先進行Qt mysql驅動所在的源碼檔案夾。使用如下指令,如果你的安裝路徑或版本和我的不同,請使用類似路徑。

cd /opt/Qt5.3.1/Src/qtbase/src/plugins/sqldrivers/mysql           

        2、在該檔案夾下使用ls指令,會發現裡面有mysql.pro檔案,沒有Makefile檔案。下面我們來生成Makefile檔案。這裡qmke我加了完整路徑,你可以找到自己的qmake所在的位置。加入環境變量後,不需要完整路徑。執行下面指令。會在該檔案夾下生成Makefile檔案。

/opt/Qt5.3.1/5.3/gcc_64/bin/qmake           

      3、執行:make

       這樣libqsqlmysql.so就生成了,在make輸出的最後一個可以看出libqsqlmysql.so檔案放在哪兒了。這裡我的最後一名輸出是 :

mv -f libqsqlmysql.so ../../../../plugins/sqldrivers/           

      4、cd  ../../../../plugins/sqldirvers可進入到該檔案夾。也就是  /opt/Qt5.3.1/Src/qtbase/plugins/sqldrivers目錄下。ls可看到libqsqlmysql.so。

      5、下面是最後一步,将驅動移動驅動應該正确放置的目錄下。在我這裡該目錄是: /opt/Qt5.3.1/5.3/gcc_64/plugins/sqldirvers。進入到/opt/Qt5.3.1/5.3/gcc_64/plugins/sqldirvers目錄下,發現裡面已經有三個驅動,其中一個是libqsqlmysql.so這是Qt自帶的,使用會報錯。應該用我們自己編譯的,将我們編譯的驅動,複制到這個檔案夾,覆寫原來的libqsqlmysql.so。自此,全部完成,可以寫一個小程式,測試我們編譯的mysql驅動。

       最後賦上我編譯好的驅動,供大家免費下載下傳:http://download.csdn.net/detail/zhang2010kang/6365213

       如果是5.3的版本,并且是64位的linux的話,将我編譯好的驅動放在驅動所在的正确檔案夾(/opt/Qt5.3.1/5.3/gcc_64/plugins/sqldirvers),應該就可以直接使用了。

繼續閱讀