它有效,我第一次安装postgres 64bit,而Qt使用MinGW 32位。
在answer链接zapredelom之后,我安装了postgres 9并将bin
和lib
目录添加到PATH。可以肯定的是,我也重新启动了机器,但没有任何改变。 QT_DEBUG_PLUGINS=1
没有给我任何额外的调试信息。
我在运行时收到此错误:
QSqlDatabase: QPSQL driver not loaded
QSqlDatabase: available drivers: QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL QPSQL7
当错误本身显示时,postgres驱动程序已经存在。确实在qsqlpsql.dll
下有qsqlpsqld.dll
和C:\Qt\5.8\mingw53_32\plugins\sqldrivers
。
我没有构建它,我没有在这台机器上安装Postgres(我在我的Linux操作系统上测试并在Windows 8.1 VM上部署),安装QT后驱动程序已经存在。
有什么问题?
答案 0 :(得分:0)
驱动程序不起作用,因为它没有找到依赖项(它应该取决于libpq.dll),并且当你运行它时,插件找不到所需的dll。如果您使用的是Windows,请尝试使用qsqlpsql.dll的dependencywalker进行检查。
您可以直接将libpq.dll放到应用程序exe文件夹中。