问题描述:
QT在连接数据库的过程中出现了如下错误:
QSqlDatabase: QMYSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QODBC QODBC3 QPSQL QPSQL7
原因分析:
是因为Qt有些版本没有自带qsqlmysql.so,这时候就需要自己手动编译一下源码,生成这个so文件。解决方案:
-
下载安装QT源代码。安装QT时可以选择安装源代码,也可以单独到QT官方网站下载源代码。
-
安装mysql头文件和libmysqlclient.so库。安装完成以后mysql的头文件一般存放在/usr/include/mysql, 而共享库存放在下面几个路径:/usr/lib/mysql/ 、/usr/local/lib、/usr/lib/x86_64-linux-gnu。
sudo apt-get install mysql-client libmysqlclient-dev
- 定位libmysqlclient.so的位置,一般在/usr/lib/x86_64-linux-gnu,方便之后添加库路径。
sudo updatedb