问题:
连接mysql数据库时,出现如下 提示:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7
db open err: “Driver not loaded Driver not loaded”
解决办法:
1、sudo apt-get install libmysqlclient-dev
2、进入QT安装目录的源码目录(如果安装 时没有选择源码,重新安装下),找到MySql驱动源码目录
如:/opt/Qt5.9.8/5.9.8/Src/qtbase/src/plugins/sqldrivers/mysql
3、用Qt Creator打开mysql.pro文件,修改pro文件如下:
4、编译mysql工程,会在上一级目录下的plugin/sqldrivers目录下生成libqsqlmysql.so文件,将该文件拷贝到
/opt/Qt5.9.8/5.9.8/gcc_64/plugins/sqldrivers目录下就可以了。
注:如果编译时出现”qtsqldrivers-config.pri: No such file or directory“找不到的情况,上一级目录打开qsqldriverbase.pri
文件,把include($$shadowed($$PWD)/qtsqldrivers-config.pri)注释掉
- QT = core core-private sql-private
- # For QMAKE_USE in the parent projects.
- #include($$shadowed($$PWD)/qtsqldrivers-config.pri)
- include($$shadowed($$PWD)/configure.pri)
- PLUGIN_TYPE = sqldrivers