QT出現(xiàn)沒有MySQL驅(qū)動手動編譯詳細(xì)步驟
報(bào)錯(cuò)代碼:
"QSqlDatabase: QMYSQL driver not loaded
,QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7"
壓根就沒有QMYSQL,那么就需要我們手動編譯,非常簡單。
筆者的配置:
QT版本 :5.13.0
MySQL數(shù)據(jù)庫是使用的SQLyog,一個(gè)像excel的非常簡單的MySQL數(shù)據(jù)庫處理軟件
1.下載64位的MySQL Community Server,截至筆者發(fā)稿前最新版本是MySQL Community Server 8.0.19
下載地址:https://dev.mysql.com/downloads/mysql/
下載后解壓備用,不用安裝哦。
2.在QT安裝目錄中找到qt安裝目錄找到: qt安裝目錄\5.13.0\Src\qtbase\src\plugins\sqldrivers\mysql\mysql.pro文件,然后用QT打開該文件。
在該文件中添加
#該路徑是剛才下載解壓備用的mysql的頭文件路徑
INCLUDEPATH +="D:\Software\mysql-8.0.19-winx64\include"
#該路徑是剛才下載解壓備用的mysql的庫文件路徑
LIBS +="D:\Software\mysql-8.0.19-winx64\lib\libmysql.lib"#為了方便查找將來編譯好的庫文件,添加這個(gè)語句用來指明編譯后的結(jié)果輸出的位置
DESTDIR = ../mysql/lib/
同時(shí)一定要屏蔽QMAKE_USE += mysql:如下.如果不屏蔽會提示mysql庫不存在.
#QMAKE_USE += mysql
具體的如圖示
3.編譯
不管下面是否輸出了error,直接點(diǎn)擊左下方的小錘子或者Ctrl+B,執(zhí)行編譯
等待右下方構(gòu)建完畢后,在mysql文件夾中就會多出來一個(gè)lib文件夾
4.配置
打開這個(gè)lib文件夾,里面有4個(gè)文件全部拷貝到 你的QT安裝路徑\Qt5.13.0\5.13.0\mingw73_64\plugins\sqldrivers中
如圖
ok,大功告成,這個(gè)時(shí)候連接MySQL數(shù)據(jù)庫就可以了。
總結(jié)
到此這篇關(guān)于QT出現(xiàn)沒有MySQL驅(qū)動手動編譯的文章就介紹到這了,更多相關(guān)QT沒有MySQL驅(qū)動內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
淺理解C++ 人臉識別系統(tǒng)的實(shí)現(xiàn)
這篇文章主要介紹了淺理解C++ 人臉識別系統(tǒng)的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03C語言中快速排序和插入排序優(yōu)化的實(shí)現(xiàn)
這篇文章主要介紹了C語言中快速排序和插入排序優(yōu)化的實(shí)現(xiàn),包括雙向劃分快速排序方法的介紹,需要的朋友可以參考下2015-11-11C和C++中的基本數(shù)據(jù)類型的大小及表示范圍詳解
這篇文章主要介紹了C和C++中的基本數(shù)據(jù)類型的大小及表示范圍詳解,基本數(shù)據(jù)類型有int、long、long long、float、double、char、string,正文有詳細(xì)介紹,歡迎參考2018-01-01C++項(xiàng)目基于HuffmanTree實(shí)現(xiàn)文件的壓縮與解壓縮功能
這篇文章主要介紹了C++項(xiàng)目基于HuffmanTree實(shí)現(xiàn)文件的壓縮與解壓縮功能,本文給大家提到文件壓縮的概念介紹及壓縮方法,通過示例代碼給大家介紹的非常詳細(xì),需要的朋友可以參考下2021-08-08詳解C++編程中向函數(shù)傳遞引用參數(shù)的用法
這篇文章主要介紹了詳解C++編程中向函數(shù)傳遞引用參數(shù)的用法,包括使函數(shù)返回引用類型以及對指針的引用,需要的朋友可以參考下2016-01-01C++進(jìn)程的創(chuàng)建和進(jìn)程ID標(biāo)識詳細(xì)介紹
傳統(tǒng)的C++(C++98)中并沒有引入線程這個(gè)概念。linux和unix操作系統(tǒng)的設(shè)計(jì)采用的是多進(jìn)程,進(jìn)程間的通信十分方便,同時(shí)進(jìn)程之間互相有著獨(dú)立的空間,不會污染其他進(jìn)程的數(shù)據(jù),天然的隔離性給程序的穩(wěn)定性帶來了很大的保障2022-08-08詳解c++ atomic原子編程中的Memory Order
在多核編程中,我們使用內(nèi)核對象【如:事件對象(Event)、互斥量對象(Mutex,或互斥體對象)、信號量對象(Semaphore)等】來避免多個(gè)線程修改同一個(gè)數(shù)據(jù)時(shí)產(chǎn)生的競爭條件。本文將詳細(xì)介紹c++ atomic原子編程中的Memory Order。2021-06-06