2016-07-16 132 views
0

我已經在Windows和一些Linux版本上解決了這個問題,現在是Mac時間。這一切都始於如下:QSqlDatabase:在Mac OS上未加載QMYSQL驅動程序

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

然後將溶液應該或多或少什麼是指向下面的鏈接,即:

MySQL for Qt on Mac

QSqlDatabase: QMYSQL driver not loaded on Xubuntu 16.04 64bits

QSqlDatabase: QMYSQL driver not loaded on Ubuntu 15.04 64bits

最後,應該生成一個新版本的(調試和發佈)lib,然後是一個遮罩用新的替換舊的,從現在開始一切都會運行。

我只是做了這一點,問題是,新的LIB(在~Qt/5.7/Src/qtbase/plugins/sqldrivers找到),一隻是

~/Qt/5.7/clang_64/bin/qmake "INCLUDEPATH += /usr/local/mysql-5.6.17-osx10.7-x86_64/include/" "LIBS += -L/usr/local/mysql-5.6.17-osx10.7-x86_64/lib/" 
make 

編有大小作爲舊(在~Qt/5.7/clang_64/plugins/sqldrivers找到)相同。我的意思是,剛剛編譯的lib與已經存在的lib相同。我仍然得到QSqlDatabase: QMYSQL driver not loaded

有人可以在這裏放些燈嗎?這是怎麼回事?

一段時間後,我發現(here)是

install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib ~/Qt/5.7/clang_64/plugins/sqldrivers/libqsqlmysql_debug.dylib 

install_name_tool -change libmysqlclient.18.dylib /usr/local/mysql/lib/libmysqlclient.18.dylib ~/Qt/5.7/clang_64/plugins/sqldrivers/libqsqlmysql.dylib 

幫助。

我對此有一些瞭解,但我會將其留給更多有關該領域的知識豐富的人員以提供詳細信息。

回答

0

的關鍵部分是:

~/Qt/5.8/clang_64/bin/qmake "INCLUDEPATH += /usr/local/mysql-5.6.17-osx10.7-x86_64/include/" "LIBS += -L/usr/local/mysql-5.6.17-osx10.7-x86_64/lib/" mysql.pro 

make 

然後:

cp ~/Qt/5.8/Src/qtbase/plugins/sqldrivers/ ~/Qt/5.8/clang_64/plugins/sqldrivers/ 
相關問題