您的位置:首页 > 数据库

windows下使用MinGW编译QPSQL插件

2010-06-27 15:52 435 查看
一直以来一直想在Qt下使用PSQL数据库,但编译后QPSQL插件,一直不能运行,因此一直没用成。前天弄了一上午的一次偶然操作,终于发现了问题所在, 其实是很简单的。现将步骤写下来。

1、安装PostgreSQL,我这里安装的时PostgreSQL8.4,安装到了d:/PostgreSQL下。

2、打开Qt Command Prompt,进入命令行,然后进入$QTDIR/src/plugins/sqldrivers/psql目录。

3、然后,在命令行输入 qmake "INCLUDEPATH+=d:/PostgreSQL/include" "LIBS+=d:/PostgreSQL/lib/libpq.lib" psql.pro。

4、打开qtcreator,然后打开psql.pro文件,编译,即完成了编译。

以前就是这编译完后就开始使用,结果运行程序提示,QSqlDatabase: QPSQL driver not loaded,使用qDebug() << QSqlDatabase::drivers();结果显示("QSQLITE", "QODBC3", "QODBC"),PSQL没有被加载。哪里出了问题呢?Qt找不到PSQL plugins路径?打开qt/plugins/sqldrivers目录,qsqlpsql4.dll、qsqlpsqld4.dll都在,路径应该是对的啊。从在这里纠结了好久,一直发现不了,重装了Qt、PostgrreSQL无数处,变换顺序也弄了,还是不得行。

就这么一直放着,直到前天早上使用depends,心想用depends看看qsqlpsql4.dll呢,结果发现缺了好些dll,打开电脑搜索,结果在d:/PostgreSQL/bin中发现这些dll,试着把d:/PostgreSQL/bin和d:/PostgreSQL/lib目录加到系统环境变量,再次运行程序,结果正常了。心时哪个高兴啊。再运行qDebug() <<QSqlDatabase::drivers();显示("QSQLITE", "QODBC3", "QODBC", "QPSQL7", "QPSQL")

正常了,折腾了这么久的问题,居然这么简单。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: