В стандартной комплектации Qt SDK под Windows драйвера для работы с СУБД PostgreSQL отсутствуют. Есть несколько путей решения этой проблемы, равное количеству возможных компиляторов. Мы соберём всё это дело под MinGW, так как в этом случае нам не придётся слишком заморачиваться с вопросом версий и Service Packов, как для студийного компилятора.
Порядок действий:
1. Нам необходимо скачать исходные коды Qt. Проще всего это сделать через Maintain Qt SDK. После запуска выбираем Package Manager и жмем далее. В следующем окне выбираем как на картинке ниже:
Выбирайте исходники только той библиотеки, с который вы работаете. Загрузка остальных лишь отнимет ваше время и место на жестком диске.
2 Теперь нам необходимо мучаться с PostgreSQL. Дело в том, что
QtCreator и QtLibrary собраны под MinGW, а PostgreSQL собрана студийным
компилятором. Если у Вас Qt собрана и внедрена в Visual Studio, то все
здорово. Если нет, то придется пересобирать PostgreSQL под MinGW:
2.1 Качаем исходники postgreSQL: http://www.postgresql.org/ftp/source/
2.2 Устанавливаем обычный PostrgeSQL и прописываем там
все настройки, дабы у нас была рабочая база.
2.3 Ставим утилиту msys, которую можно скачать по ссылке http://www.mingw.org/wiki/MSYS
2.4 В папке с msys заходим в папку etc/ и открываем файл fstab. В этом файле вы увидите строчку формата:
C:/mingw /mingw
Так вот, первую часть необходимо заменить на ваш путь до MinGW, в моём случае эта строка стала выглядеть следующим образом:
E:/Dev/QtSDK/mingw /mingw
Сохраняем изменения и запускаем MSYS (файл msys.bat).
2.5 Переходим в папку с postgreSQL, в моём случае это выглядит так:
cd /e/Dev/postgresql921
что аналогично пути:
E:\Dev\postgresql921
2.6 Запускаем конфигурирование postgreSQL командой:
./configure --without-zlib
Мы пока не заморачиваемся на конфигурацию сборки, ибо это не наша тема.
2.7 Переходим в папку с исходниками и запускаем сборку библиотеки:
cd src/
make all
3 Далее в QtCreator загружаем проект psql.pro (у меня путь такой E:\Dev\QtSDK\QtSources\4.8.0\src\plugins\sqldrivers\psql\psql.pro).
В .pro файле добавляем пути к файлам postgreSQL. В моём случае:
postgresql921 – директория postgreSQL с исходниками
4 Далее жмём Сборка -> собрать проект psql. Если появятся ошибки, значит вы что-то сделали не так.
5 Устанавливаем плагин, для этого жмём Сборка -> Установить проект psql
Поблагодарим моего товарища Евгения, который изначально разобрался со всем этим барахлом, и чей пост я использовал как исходник :) Можете обращаться к нему с вопросами по адресу: matzuk2@mail.ru.
Порядок действий:
1. Нам необходимо скачать исходные коды Qt. Проще всего это сделать через Maintain Qt SDK. После запуска выбираем Package Manager и жмем далее. В следующем окне выбираем как на картинке ниже:
Выбирайте исходники только той библиотеки, с который вы работаете. Загрузка остальных лишь отнимет ваше время и место на жестком диске.
2 Теперь нам необходимо мучаться с PostgreSQL. Дело в том, что
QtCreator и QtLibrary собраны под MinGW, а PostgreSQL собрана студийным
компилятором. Если у Вас Qt собрана и внедрена в Visual Studio, то все
здорово. Если нет, то придется пересобирать PostgreSQL под MinGW:
2.1 Качаем исходники postgreSQL: http://www.postgresql.org/ftp/source/
2.2 Устанавливаем обычный PostrgeSQL и прописываем там
все настройки, дабы у нас была рабочая база.
2.3 Ставим утилиту msys, которую можно скачать по ссылке http://www.mingw.org/wiki/MSYS
2.4 В папке с msys заходим в папку etc/ и открываем файл fstab. В этом файле вы увидите строчку формата:
C:/mingw /mingw
Так вот, первую часть необходимо заменить на ваш путь до MinGW, в моём случае эта строка стала выглядеть следующим образом:
E:/Dev/QtSDK/mingw /mingw
Сохраняем изменения и запускаем MSYS (файл msys.bat).
2.5 Переходим в папку с postgreSQL, в моём случае это выглядит так:
cd /e/Dev/postgresql921
что аналогично пути:
E:\Dev\postgresql921
2.6 Запускаем конфигурирование postgreSQL командой:
./configure --without-zlib
Мы пока не заморачиваемся на конфигурацию сборки, ибо это не наша тема.
2.7 Переходим в папку с исходниками и запускаем сборку библиотеки:
cd src/
make all
3 Далее в QtCreator загружаем проект psql.pro (у меня путь такой E:\Dev\QtSDK\QtSources\4.8.0\src\plugins\sqldrivers\psql\psql.pro).
В .pro файле добавляем пути к файлам postgreSQL. В моём случае:
INCLUDEPATH += E:/Dev/postgresql921/src/include
INCLUDEPATH += E:/Dev/postgresql921/src/interfaces/libpq
LIBS+= E:/Dev/postgresql921/src/interfaces/libpq/libpq.dll
postgresql921 – директория postgreSQL с исходниками
4 Далее жмём Сборка -> собрать проект psql. Если появятся ошибки, значит вы что-то сделали не так.
5 Устанавливаем плагин, для этого жмём Сборка -> Установить проект psql
Поблагодарим моего товарища Евгения, который изначально разобрался со всем этим барахлом, и чей пост я использовал как исходник :) Можете обращаться к нему с вопросами по адресу: matzuk2@mail.ru.
Спасибо, дружище, отличный мануал! Товарищу отдельное спасибо :)
ОтветитьУдалить./configure --without-zlib
ОтветитьУдалитьsh: ./configure: No such file or directory
И что с этим делать, хотелось бы узнать???