gpt4 book ai didi

MySql QT QMYSQL 驱动程序未加载

转载 作者:行者123 更新时间:2023-11-29 07:29:13 25 4
gpt4 key购买 nike

我尝试使用 QT 中的 MySQL 模块,但没有结果,该模块存在,但 Qt 未加载它。我有这个错误

QSqlDatabase:未加载 QMYSQL 驱动程序
QSqlDatabase:可用驱动程序:QSQLITE QMYSQL QMYSQL3 QPSQL QPSQL7
QSqlError("", "驱动程序未加载", "驱动程序未加载")

如果我创建一个ldd libqsqlmysql.so我会得到这个结果

linux-vdso.so.1 (0x00007ffe89950000)
libmysqlclient_r.so.16 => 未找到
libQt5Sql.so.5 =>/opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libQt5Sql.so.5 (0x00007fdc67aaf000)
libQt5Core.so.5 =>/opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libQt5Core.so.5 (0x00007fdc67372000)
libstdc++.so.6 =>/usr/lib/x86_64-linux-gnu/libstdc++.so.6 (0x00007fdc6706b000)
libc.so.6 =>/lib/x86_64-linux-gnu/libc.so.6 (0x00007fdc66cc2000)
libpthread.so.0 =>/lib/x86_64-linux-gnu/libpthread.so.0 (0x00007fdc66aa4000)
libicui18n.so.53 =>/opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicui18n.so.53 (0x00007fdc66658000)
libicuuc.so.53 =>/opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicuuc.so.53 (0x00007fdc662cd000)
libdl.so.2 =>/lib/x86_64-linux-gnu/libdl.so.2 (0x00007fdc660c8000)
libgthread-2.0.so.0 =>/usr/lib/x86_64-linux-gnu/libgthread-2.0.so.0 (0x00007fdc65ec6000)
librt.so.1 =>/lib/x86_64-linux-gnu/librt.so.1 (0x00007fdc65cbe000)
libglib-2.0.so.0 =>/lib/x86_64-linux-gnu/libglib-2.0.so.0 (0x00007fdc659c5000)
libm.so.6 =>/lib/x86_64-linux-gnu/libm.so.6 (0x00007fdc656c4000)
libgcc_s.so.1 =>/lib/x86_64-linux-gnu/libgcc_s.so.1 (0x00007fdc654ae000)
/lib64/ld-linux-x86-64.so.2 (0x00007fdc67f1c000)
libicudata.so.53 =>/opt/Qt/5.4/gcc_64/plugins/sqldrivers/./../../lib/libicudata.so.53 (0x00007fdc63e25000)
libpcre.so.3 =>/lib/x86_64-linux-gnu/libpcre.so.3 (0x00007fdc63be8000)

问题是我认为这一行libmysqlclient_r.so.16 =>找不到

如果我创建一个locate mysqlclient,我会得到这个结果

/usr/lib/x86_64-linux-gnu/libmysqlclient.so.18
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.18.0.0
/usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18
/usr/lib/x86_64-linux-gnu/libmysqlclient_r.so.18.0.0
/usr/share/doc/libmysqlclient18
/usr/share/doc/libmysqlclient18/NEWS.Debian.gz
/usr/share/doc/libmysqlclient18/changelog.Debian.gz
/usr/share/doc/libmysqlclient18/changelog.gz
/usr/share/doc/libmysqlclient18/版权
/var/cache/apt/archives/libmysqlclient18_5.5.43-0+deb7u1_amd64.deb
/var/cache/apt/archives/libmysqlclient18_5.5.44-0+deb7u1_amd64.deb
/var/lib/dpkg/info/libmysqlclient18:amd64.list
/var/lib/dpkg/info/libmysqlclient18:amd64.md5sums
/var/lib/dpkg/info/libmysqlclient18:amd64.postinst
/var/lib/dpkg/info/libmysqlclient18:amd64.postrm
/var/lib/dpkg/info/libmysqlclient18:amd64.shlibs

我读到一些论坛,需要建立一个我尝试过的符号链接(symbolic link),但我总是这个错误

最佳答案

假设为了得到此错误,您从 qt.io 下载的二进制包安装了 Qt:

  • 安装 MySQL 客户端开发包
  • 运行 MaintenanceTool(在安装 Qt 的位置)
  • 要求它安装额外的软件包
  • 至少安装基本模块的“源组件”
  • 转到/dir/where/you/installed/Qt/version/Source/
  • 进入qtbase/src/plugins/sqldrivers/mysql
  • 完全相同的 Qt 版本运行 qmake (/dir/where/you/installed/Qt/version/arch/bin/qmake 或类似)
  • 运行make,如果它因找不到 header /库而爆炸,请检查您是否正确安装了这些 MySQL 客户端开发包

这应该会给你一个全新的插件,祈祷它已经放在正确的位置了。否则找到新的libqsqlmysql.soldd它以确保它没问题,并用新插件覆盖旧插件。

关于MySql QT QMYSQL 驱动程序未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33348612/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com