linux QSqlDatabase: QMYSQL driver not loaded
时间: 2025-04-16 22:39:01 浏览: 26
### Linux环境下QSqlDatabase中QMYSQL驱动未加载解决方案
在Linux环境中解决`QSqlDatabase: QMYSQL driver not loaded`问题通常涉及几个关键步骤。确保MySQL客户端库已安装并配置正确对于成功编译和链接Qt MySQL插件至关重要[^1]。
#### 安装必要的依赖项
为了使Qt能够识别并使用MySQL数据库,需要先确认已经安装了MySQL客户端库及其开发包。可以通过以下命令来完成:
```bash
sudo apt-get update
sudo apt-get install libmysqlclient-dev
```
这一步骤会下载并安装所需的头文件和其他资源以便后续编译过程顺利进行[^2]。
#### 获取Qt源代码
如果尚未获取Qt源码,则可以从官方网站或其他可信渠道获得相应版本的源代码压缩包,并解压至本地磁盘上的合适位置。例如,在路径 `/home/user/qt-everywhere-src-5.x.y/` 中存放着完整的Qt源树结构[^3]。
#### 编译MySQL插件
进入Qt源代码中的SQL驱动程序目录,具体来说就是 `qtbase/src/plugins/sqldrivers/mysql` 文件夹内。这里包含了用于构建特定于平台和支持不同类型的数据库系统的模块化组件之一——即针对MySQL设计的那个部分。
执行如下指令来进行自定义构建操作前,请确保环境变量如`PATH`已被适当设置以包含Qt工具链的位置;同时也要注意调整CMake参数使之匹配个人系统状况下的实际情况:
```bash
cd /path/to/qt-source-tree/qtbase/src/plugins/sqldrivers
qmake "INCLUDEPATH+=/usr/include/mysql" "LIBS+=-L/usr/lib/x86_64-linux-gnu -lmysqlclient_r"
make sub-mysql
sudo make install
```
上述命令序列完成了对MySQL插件项目的重新编译工作,并将其放置到了Qt框架可以访问的标准位置上。此时应该可以在目标机器上看到新生成的共享对象文件(`.so`),比如名为`libqsqlmysql.so`这样的动态链接库。
#### 验证安装成果
最后一步是要验证新的驱动是否已经被正确注册进了应用程序内部。创建一个小测试项目或者直接利用现有的工程实例尝试建立与远程服务器之间的连接即可得知一切是否就绪无误。
通过以上措施应当能有效克服Linux平台上关于`QSqlDatabase: QMYSQL driver not loaded`这一难题所带来的困扰。
阅读全文
相关推荐


















