
Qt 是 C++ 的一個常用 gui 大而全的架構, 包含了很多實用的内容, 包括了資料庫連接配接, 使開發變得非常的簡單.
MySQL 在 V5 已經是開箱即用了, MySQL-client 驅動預設安裝.
但是 Qt 架構的 V4 版本不是如此, MySQL 的驅動需要自己編譯. 關于這個過程, 網上的教程比較稀缺
本機環境 :
Centos 7
前置條件 :
下載下傳安裝 MySQL :yum install mysql mysql-devel -y
如果不是連接配接遠端資料庫, 則需要
yum install mariadb-server -y
systemclt start mariadb #啟動MariaDB
systemclt enable mariadb #設定開機自啟動
MariaDB 是 MySQL 的一個 GPL 開源分支, 用以減少避免 Oracle 對 MySQL 幹預. CentOS 7 将 MySQL 從軟體清單中移除了, 替換成了 MariaDB. MariaDB 力圖跟 MySQL 100% 相容, 非特殊情況可以放心使用.
測試一下 MySQL 連接配接
mysql -u root -p
輸入密碼為空, 顯示 Welcome to the MariaDB monitor. 則成功安裝 MySQL.
如果是遠端連接配接則
mysql -u [使用者名] -h [IP] -p
-p 的意思是使用賬戶密碼登入.
下載下傳安裝 Qt-4.8.6從官網下載下傳qt-4.8.6: qt-everywhere-opensource-src-4.8.6.tar.gz
tar zxvf qt-everywhere-opensource-src-4.8.6.tar.gz
安裝 g++
yum install gcc gcc-c++
打開 qt-everywhere-opensource-src-4.8.6
make
(時間會持續很久, 可以刷刷知乎)
安裝
make install
配置環境變量
vi ~/.bash_profile
添加
export QTDIR=/usr/local/Trolltech/Qt-4.8.6
export PATH=/opt/qtcreator-2.6.1:$QTDIR/bin:$PATH
export MANPATH=$QTDIR/man:$MANPAT
export LD_LIBRARY_PATH=$QTDIR/lib:$LD_LIBRARY_PATH
執行修改, 這樣就不用重新開機
source ~/.bash_profile
下載下傳 Qt Creator, 同樣設定環境變量
# vi ~/.bash_profile
添加:
export PATH=/opt/qtcreator-2.6.1:$PATH
# source ~/.bash_profile
打開一個
sql的樣例進行測試, 預設的樣例都是使用
Sqlite的,
MySQL驅動未成功安裝不影響結果. 如果成功運作, 則說明前置條件已經完成.
安裝 MySQL 驅動
要安裝 MySQL 驅動, 要編譯出
libsqlmysql.so檔案放置到
{$QTDIR}/plugins/sqldrivers官方文檔如下
SQL Database Driversdoc.qt.io
回到 QT 源碼, 打開 src/plugins/sqldrivers/mysql
但是不同的 Linux 發行版的 rpm 路徑有所不同, 是以要做下面修改, 實測 Centos7 可行
qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib64/mysql -lmysqlclient_r" mysql.pro
make install
安裝結束
在 QT creator 打開一個空項目測試一下.
test.pro
#-------------------------------------------------
#
# Project created by QtCreator 2019-10-11T03:29:29
#
#-------------------------------------------------
QT += core sql
QT -= gui
TARGET = testSQL
CONFIG += console
CONFIG -= app_bundle
TEMPLATE = app
SOURCES += main.cpp
main.cpp
#include
Console 輸出 "open" 即為成功安裝.