最近學習qt,小白一枚,如有錯誤,請指出。
在mac上使用qt連線資料庫mysql報錯,原因是qt中沒有和mysql的連線外掛程式。具體錯誤如下圖:
第一部分
1,確定是否已經安裝好了mysql
安裝完成後終端輸入:
ls /usr/local
可以看見當前路徑下的檔案
圖中存在mysql說明安裝成功,或者檢視cellar檔案中是否存在。
2,確定自己的qt安裝路徑
/users/mac/qt5.14.2/5.14.2/src/qtbase/src/plugins/sqldrivers
3,開啟終端,輸入qmake -v
如果出現:
zsh: command not found: qmake
export qtdir=/users/mac/qt5.14.2/5.14.2/clang_64
export ld_library_path=
$qtdir/lib:$ld_library_path
export path=
$qtdir/bin:$path
儲存退出後,輸入:
(將配置的環境立即生效)
source ~/.bash_profile
終端再次執行qmake -v,如出現下圖表示配置成功。cd qt5.14.2/5.14.2/src/qtbase/src/plugins/sqldrivers 到當前目錄下,並且在sqldrivers 目錄下依次執行:
qmake -- mysql_prefix=/usr/local/mysql
make sub-mysql
qmake
make
install
執行完後可在
qt5.14.2/5.14.2/src/qtbase/src/plugins/sqldrivers
或者qt5.14.2/5.14.2/src/qtbase/src/plugins/sqldrivers/plugins/sqldrivers
路徑下發現四個檔案。
再次執行qt中的專案時發現問題仍然未解決,還是出現相同的問題,說明連線的庫出了問題。
第二部分
1,首先檢視 /users/mac/qt5.14.2/5.14.2/src/qtbase/src/plugins/sqldrivers/ 資料夾下是否存在libqsqlmysql.dylib,如果沒有,繼續在當前sqldrivers下的plugins/sqldrivers/ 資料夾中尋找。如果未找到則表示第一部分出錯。
2,找到檔案後,用終端開啟libqsqlmysql.dylib的上一級目錄下執行
otool -l libqsqlmysql.dylib,檢視輸出。
如出現上圖,表示路徑錯誤因為當前鏈結在
/users/mac/qt5.14.2/5.14.2/clang_64,需要鏈結在自己mysql中(/usr/local/mysql-8.0.12-macos10.13-x86_64/lib)->我自己mysql的安裝路徑
首先檢視 /usr/local/mysql-8.0.12-macos10.13-x86_64/lib 下是否有libmysqlclient.21.dylib檔案,這個檔案是安裝時安裝sql後建立的。
然後執行(注意要換成自己的路徑)
sudo
ln -s /usr/local/mysql/lib/libmysqlclient.21.dylib /users/mac/qt5.14.2/5.14.2/clang_64/lib/libmysqlclient.21.dylib
成功執行後再次執行 otool -l libqsqlmysql.dylib。這時候qt就可以使用mysql了。
qt專案**:(.pro檔案中需要加上sql)
#include
"widget.h"
#include
"ui_widget.h"
#include
#include
#include
#include
widget::
widget
(qwidget *parent)
:qwidget
(parent),ui
(new ui::widget)
else
}widget::
~widget()
成功介面截圖。 Mac端QT5 14 2配置QMQTT,親測有效
選擇版本,我選的是5.14.2 qt開啟.pro 檔案 編譯 此時大多數都會出現以下問題找不到標頭檔案 網上有說在qt安裝目錄下的include資料夾下新建乙個qtmqtt資料夾,再將.件全部複製進去,就可以消除錯誤了,但是我的好像不可以 如果你的可以,就不需要這一步。如圖 此時就不會顯示錯誤。vi...
在qt 5 14 2中使用webkit
在qt 5.6以後的版本中,官方移除了qtwebkit元件,下面是在qt 5.14.2中使用最新版webkit的配置過程記錄。1.獲取最新版的qtwebkit 2.複製檔案 我的專案工程是32位的,所以解壓縮qtwebkit windows windows 7 mingw73 windows win...
使用Qt5 6連線MySql
最近在做畢業設計,有不少同學選擇使用qt和mysql做資料庫程式。然而,這兩種開發工具並不是非常完美的一結合就能使用的。通常qt會自帶mysql的驅動,但是,一般能直接使用的並不多。大多數部落格 都給出了mysql驅動的編譯過程。在這裡給出現成的 已經編譯好了的驅動。在可以win10 qt5.6和m...