【问题标题】:QT: driver not loaded, but driver is presentQT:未加载驱动程序,但存在驱动程序
【发布时间】:2017-05-30 13:55:39
【问题描述】:

编辑#2

它工作,我第一次安装postgres 64位,而Qt使用MinGW 32位。

编辑

zapredelom 链接的answer 之后,我安装了postgres 9 并将binlib 目录添加到PATH。可以肯定的是,我也重新启动了机器,但没有任何改变。 QT_DEBUG_PLUGINS=1 没有给我额外的调试信息。


我在运行时收到此错误:

QSqlDatabase: QPSQL driver not loaded 
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7

正如错误本身所显示的那样,postgres 驱动程序已经存在。在C:\Qt\5.8\mingw53_32\plugins\sqldrivers 下确实有qsqlpsql.dllqsqlpsqld.dll。 我没有构建它,也没有在这台机器上安装 Postgres(我在我的 Linux 操作系统上测试并部署在 Windows 8.1 VM 上),安装 QT 后驱动程序已经存在。

有什么问题?

【问题讨论】:

标签: postgresql qt driver


【解决方案1】:

驱动不工作是因为找不到依赖(应该是依赖libpq.dll),运行时插件找不到需要的dll。如果您使用的是 windows,请尝试使用 qsqlpsql.dll 的dependencywalker 进行检查。

您可以直接将您的 libpq.dll 放入您的应用程序 exe 文件夹中。

【讨论】:

    猜你喜欢
    • 2014-12-17
    • 2020-08-02
    • 2016-12-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多