Добрый день.
У меня такая же проблема с МСВС, qt и постгрес. вы разобрались как собрать этот драйвер и установить постгрес в МСВС?
Да. Разобрались.
Сейчас расскажу как.
На данный момент работаем с версией 7.3.3. Но ставили из ВНИИС`овского пакета программ (пакет "linter"). Но, я думаю, если скачать на сайте postres эту версию, то она должна заработать.
Далее. (под root`ом)
1. Создали папку /usr/lib/qt-3.3.3/plugins/sqldrivers/psql
2. Поместили туда файлы create_driver.bat
main.cpp
psql.pro
В файле create_driver.bat прописаны пути и команды
cd /usr/lib/qt-3.3.3/plugins/sqldrivers/psql
qmake -o Makefile "INCLUDEPATH+=/usr/include/pgsql /usr/lib/libpq"
проверьте есть ли эти папки и библиотека libpq.
3. В папку /usr/lib/qt-3.3.3/include
поместили файлы qsql_psql.h
qsql_psql.cpp
4. В файле main.cpp
прописали путь #include "/usr/lib/qt-3.3.3/include/qsql_psql.h"
5. В файле psql.pro
прописали <<
C++ (Qt)
HEADERS = /usr/lib/qt-3.3.3/include/qsql_psql.h
SOURCES = main.cpp \
/usr/lib/qt-3.3.3/include/qsql_psql.cpp
UNIX {
OBJECTS_DIR = .obj
!contains( LIBS, .*pq.* ) {
LIBS *= -lpq
}
}
#REQUIRES = sql
INCLUDEPATH += /usr/include/pgsql
>>
проверьте пути.6. В файле /usr/lib/qt-3.3.3/include/qsql_psql.h
прописали C++ (Qt)
#include "/usr/include/pgsql/libpq-fe.h"
7.В файле /usr/lib/qt-3.3.3/include/qsql_psql.cpp
прописали<<
C++ (Qt)
#include "qsql_psql.h"
#include <private/qsqlextension_p.h>
#include <math.h>
#include <qpointarray.h>
#include <qsqlrecord.h>
#include <qregexp.h>
#include <qdatetime.h>
// PostgreSQL header <utils/elog.h> included by <postgres.h> redefines DEBUG.
#if defined(DEBUG)
# undef DEBUG
#endif
#include "/usr/include/pgsql/postgres.h"
#include "/usr/include/pgsql/libpq/libpq-fs.h"
// PostgreSQL header <catalog/pg_type.h> redefines errno erroneously.
#if defined(errno)
# undef errno
#endif
#define errno qt_psql_errno
#include "/usr/include/pgsql/catalog/pg_type.h"
#undef errno
QPtrDict<QSqlDriverExtension> *qSqlDriverExtDict();
QPtrDict<QSqlOpenExtension> *qSqlOpenExtDict();
>>
8. запустили create_driver.bat
9. В результате в папке /usr/lib/qt-3.3.3/plugins/sqldrivers/psql/sqldrivers
собралась библиотека libqsqlpsql.so
перенесли ее в /usr/lib/qt-3.3.3/plugins/sqldrivers/
и вроде бы все у нас заработало.В ходе сборки могут возникать некоторые ошибки, связанные с тем, что некоторые пути в h`никах лежат по другим адресам. Я собирал этот драйвер на многих машинах и везде все происходит по разному. Могу посоветовать только одно: Правьте.