Qt5 安裝mysql驅動

Qt5 安裝MYSQL數據庫驅動

  • 本文以Qt5.9.0爲準。

在Qt環境中使用MYSQL數據庫的同學,應該都遇到過下面這段提示:

QSqlDatabase: MYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

是的,QMYSQL在有效驅動的列表裏面,但是卻說MYSQL驅動沒裝!
先說我探索得出的結論是:需要手動編譯一個MYSQL驅動。
不用編譯了,找到mysql的lib和dll放到Qt bin路徑下就可以了。

Windows

從MYSQL官網下載mysql,exe安裝版或者zip壓縮版都可以,安裝/解壓後,找到安裝路徑/解壓路徑lib目錄下的libmysql.lib libmysql.dll這兩個文件,拷貝到Qt的mingw的bin路徑下,就能用了。

網址在這 https://dev.mysql.com/downloads/mysql/

這裏寫圖片描述

找到圖一頁面,往下翻

這裏寫圖片描述

這裏寫圖片描述

解壓後找到dll和lib,複製粘貼到qt的bin路徑下

這裏寫圖片描述

Ubuntu

手動編譯這種方法可能不需要了,待我實驗成功後,就把這種方法拋棄掉。

1. 安裝Qt源碼

    Qt 安裝包提供了源碼,安裝Qt時可以選擇安裝源碼。也可以單獨到Qt官網下載源碼,地址是: http://download.qt.io/official_releases/qt/5.9/5.9.0/single/

2. 安裝依賴庫

    `sudo apt-get install  mysql-client libmysqlclient-dev libqt5sql5-mysql`

    這一步是爲了得到MYSQL的頭文件和libmysqlclient.so庫,安裝完成後,頭文件一般是在/usr/include/mysql,而so庫在下面這幾個目錄其中之一: 
    /usr/lib/mysql
    /usr/local/lib
    /usr/lib/x86_64-linux-gnu/
    我是通過命令才找到的:
sudo updatedb #更新Ubuntu的文件數據庫,時間可能久一點
locate libmysqlclient.so #通過數據庫搜索找到so文件的路徑
熟悉MYSQL的同學可以去官網下載一個壓縮包,解壓也是可以的。

https://dev.mysql.com/downloads/mysql/

在MySQL Community Server標籤下面,去找吧。

3. 編譯安裝mysql驅動

    進入qt源碼路徑下的mysql目錄
    $QTDIR/Qt5.9.0/5.9/Src/qtbase/src/plugins/sqldrivers/mysql

    qmake 編譯該工程

    qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/x86_64-linux-gnu/ -lmysqlclient" mysql.pro


    make && make install

    如果編譯時報錯:Project ERROR: Library 'mysql' is not defined.

    把mysql.pro中的 QMAKE_USE += mysql用#註釋掉,  即 #QMAKE_USE += mysql
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章