download QT จาก link นี้
download.qt.io/official_releases/qt/5.12/5.12.3/qt-opensource-linux-x64-5.12.3.run
chmod +x qt-opensource-linux-x64-5.7.0.run ./qt-opensource-linux-x64-5.7.0.run
sudo apt-get install build-essential
sudo apt-get install libfontconfig1
sudo apt-get install mesa-common-dev
sudo apt-get install libglu1-mesa-dev -y
แล้วก็ลง mysqlhttps://qt-thailand.blogspot.com/2019/10/mysql-rpi.html หรือ
https://support.rackspace.com/how-to/installing-mysql-server-on-ubuntu/
sudo apt-get install libqt5sql5-mysql
เมื่อลง mysql เสร็จแล้ว และเปิดโปรแกรม qt ขึ้นมา
เมื่อเราเขียน code และ compile แล้ว ทดลองรันดู จะพบ errorประมาณนี้
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3
ให้แก้ไขโดยทำตามนี้ให้เข้าไปที่โฟลเดอร์ที่เราลงโปรแกรม qt ไว้
cd /opt/Qt5.2.1/5.2.1/gcc_64/plugins/sqldrivers
แล้วพิมพ์ldd libqsqlmysql.so
เราจะเห็นlibmysqlclient.so.18 => not found
ให้ไปที่นี่
https://launchpad.net/ubuntu/xenial/amd64/libmysqlclient18/5.6.25-0ubuntu1
แล้ว download ตัวนี้มา
libmysqlclient18_5.6.25-0ubuntu1_amd64.debเมื่อได้ไฟล์มาแล้ว ให้ใช้คำสั่ง
sudo dpkg -i libmysqlclient18_5.6.25-0ubuntu1_amd64.debเพียงเท่านี้ เราก็จะสามารถใช้ qt กับ mysql ได้แล้ว
แต่ถ้าเราเขียน code แล้ว compile แล้ว พบ error ที่ไม่มี QMYSQL เช่น
QSqlDatabase: available drivers: QSQLITE
ให้ทำดังนี้
cd Qt5.13.1/5.13.1/Src/qtbase/src/plugins/sqldrivers แล้วพิมพ์
../../../../../gcc_64/bin/qmake sqldrivers.pro ถ้า error ลองอ่านที่มันฟ้องขึ้นมา ในที่นี้ฟ้องว่า ให้ลองติดตั้ง qtchooser
sudo apt-get qtchooser
แล้วก็
../../../../../gcc_64/bin/qmake sqldrivers.pro เมื่อเสร็จแล้วก็ตามด้วย
make install
ที่มา
https://forum.qt.io/topic/80882/error-while-compiling-qt-mysql-driver/20
ที่มา
https://wiki.qt.io/Install_Qt_5_on_Ubuntu
https://stackoverflow.com/questions/14667768/qmysql-driver-available-but-not-loaded
https://stackoverflow.com/questions/37369480/qsqldatabase-qmysql-driver-not-loaded-on-ubuntu-15-04-64bits