Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C++ Qt驱动程序Postgresql可用但未加载_C++_Postgresql_Qt_Driver - Fatal编程技术网

C++ Qt驱动程序Postgresql可用但未加载

C++ Qt驱动程序Postgresql可用但未加载,c++,postgresql,qt,driver,C++,Postgresql,Qt,Driver,我正在尝试制作一个示例项目,以读取数据库中的数据 我在Windows10上使用Qt5.8,带有MingW32位编译器。Postgresql 9.6 32位 我有一个错误: QSqlDatabase:未加载QPSQL驱动程序 QSqlDatabase:可用驱动程序:QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL7 我试图在我的路径中添加: -事后\ -PostgresPath\include -PostgresPath\bin -PostgresPath\lib

我正在尝试制作一个示例项目,以读取数据库中的数据

我在Windows10上使用Qt5.8,带有MingW32位编译器。Postgresql 9.6 32位

我有一个错误: QSqlDatabase:未加载QPSQL驱动程序

QSqlDatabase:可用驱动程序:QSQLITE QMYSQL QMYSQL3 QODBC QODBC3 QPSQL7

我试图在我的路径中添加:

-事后\

-PostgresPath\include

-PostgresPath\bin

-PostgresPath\lib

我试图在QTPath\5.8\mingw53_32\bin中复制libeay32.dll、libintl-8.dll、libpq.dll、ssleay32.dll

我试图在我的项目文件夹中添加libpq.dll、qsqlpsql.dll和qsqlpsqld.dll,但没有帮助

你有什么建议吗?
谢谢。

可能您没有实际用于开发的确切QPSQL插件版本(例如,由于Qt框架升级等),因此该插件存在,但无法加载。尝试手动构建Qt-PSQL驱动程序插件。下载Qt源代码的精确版本(在您的情况下为5.8.0),并运行以下命令。 我假设PostgreSQL安装在C:\psql中,而Qt源代码位于%QTDIR%中,请按如下方式构建插件:

 cd %QTDIR%\src\plugins\sqldrivers\psql
 qmake -o Makefile "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\ms\libpq.lib" psql.pro
 nmake

这在我遇到类似问题时适用。

可能您没有实际用于开发的确切QPSQL插件版本(例如,由于Qt框架升级等),因此插件存在,但无法加载。尝试手动构建Qt-PSQL驱动程序插件。下载Qt源代码的精确版本(在您的情况下为5.8.0),并运行以下命令。 我假设PostgreSQL安装在C:\psql中,而Qt源代码位于%QTDIR%中,请按如下方式构建插件:

 cd %QTDIR%\src\plugins\sqldrivers\psql
 qmake -o Makefile "INCLUDEPATH+=C:\psql\include" "LIBS+=C:\psql\lib\ms\libpq.lib" psql.pro
 nmake
当我遇到类似的问题时,这对我来说很有效