linux运行qsql,QSqlDatabase:未在Ubuntu 15.04 64位上加​​载QMYSQL驱动程序

在Ubuntu 15.04 64位中,我安装了Qt5.6(在线安装程序),并且在尝试将开发环境从Windows 7迁移到Linux时,遇到了以下问题:

SqlDatabase: QMYSQL driver not loaded

在此之后,我设法找到 ~/Qt/5.6/gcc_64/plugins/sqldrivers/libqsqlmysql.so然后:

$ ldd libqsqlmysql.so

linux-vdso.so.1 => (0x00007ffffd571000)

libmysqlclient_r.so.16 => not found

libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007fe94ef24000)

libcrypt.so.1 => /lib/x86_64-linux-gnu/libcrypt.so.1 (0x00007fe94ecec000)

libnsl.so.1 => /lib/x86_64-linux-gnu/libnsl.so.1 (0x00007fe94ead2000)

libssl.so.10 => not found

libcrypto.so.10 => not found

libQt5Sql.so.5 => /home/user/Qt/5.6/gcc_64/plugins/sqldrivers/../../lib/libQt5Sql.so.5 (0x00007fe94e88d000)

libQt5Core.so.5 => /home/user/Qt/5.6/gcc_64/plugins/sqldrivers/../../lib/libQt5Core.so.5 (0x00007fe94e17a000)

libpthread.so.0 => /lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fe94df5c000)

libstdc++.so.6 => /usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fe94dc4d000)

libm.so.6 => /lib/x86_64-linux-gnu/libm.so.6 (0x00007fe94d944000)

libgcc_s.so.1 => /lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fe94d72e000)

libc.so.6 => /lib/x86_64-linux-gnu/libc.so.6 (0x00007fe94d364000)

libicui18n.so.56 => /home/user/Qt/5.6/gcc_64/plugins/sqldrivers/../../lib/libicui18n.so.56 (0x00007fe94cec9000)

libicuuc.so.56 => /home/user/Qt/5.6/gcc_64/plugins/sqldrivers/../../lib/libicuuc.so.56 (0x00007fe94cb11000)

libicudata.so.56 => /home/user/Qt/5.6/gcc_64/plugins/sqldrivers/../../lib/libicudata.so.56 (0x00007fe94b12e000)

libdl.so.2 => /lib/x86_64-linux-gnu/libdl.so.2 (0x00007fe94af29000)

libgthread-2.0.so.0 => /usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fe94ad27000)

librt.so.1 => /lib/x86_64-linux-gnu/librt.so.1 (0x00007fe94ab1f000)

libglib-2.0.so.0 => /lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fe94a80f000)

/lib64/ld-linux-x86-64.so.2 (0x000056024837f000)

libpcre.so.3 => /lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fe94a5a2000)

告诉libmysqlclient_r.so.16 => not found。实际上,似乎我有一个更新的版本:

find / -name libmysqlclient_r*

/usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18

/usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18.1.0

/usr/lib/x86_64-linux-gnu/libmysqlclient_r.so

/usr/lib/x86_64-linux-gnu/libmysqlclient_r.a

也许这就是问题所在。有人可以确认吗?我应该如何进行?

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Qt程序中遇到 "QSqlDatabase: QMYSQL driver not loaded" 错误通常表示应用程序试图使用MySQL数据库功能,但是相应的Qt MySQL模块(QT_DBUS)没有成功加或未被安装。这可能是由于以下几个原因: 1. **缺少库文件**:确保你的系统已经安装了Qt对MySQL的支持库,如`libQt5Qsql_mysql`。如果没有,需要从Qt官方网站下并安装相应的插件。 2. **环境变量配置**:检查Qt项目的构建环境中,是否有设置指向MySQL数据库的路径,比如`QT_PLUGIN_PATH`可能需要包含MySQL插件目录。 3. **构建配置**:如果你是通过Qt Creator或者其他集成开发环境(IDE)创建的项目,确认是否在构建配置中选择了包含MySQL支持的模块。 4. **版本兼容性**:确保使用的Qt版本与MySQL驱动版本兼容,有时旧版驱动可能无法识别新版本的Qt。 为了解决这个问题,你可以按照以下步骤尝试: 1. **更新或重新安装Qt**: 确保你的Qt版本包含了MySQL支持。 2. **重新配置项目**: 在IDE中,确保正确的组件已选中,并配置好数据库连接信息。 3. **手动添加依赖**: 如果必要,可以手动将Qt MySQL模块添加到系统的动态链接库搜索路径。 4. **检查错误日志**:查看详细的错误信息,有时它会提供更具体的解决线索。 如果以上步骤仍无法解决问题,建议查阅官方文档或在线社区寻找解决方案,或者寻求专业技术人员的帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值