16.2. Сборка libpq с помощью Visual C++ или Borland C++
Использовать Visual C++ 7.1-9.0 или Borland C++ для компиляции libpq рекомендуется, только если вам нужна версия с другими флагами для отладки/выпуска, либо вам нужна статическая библиотека для компоновки приложения. Для нормального использования рекомендуется вариант сборки с MinGW, либо Visual Studio, либо Windows SDK.
Чтобы собрать клиентскую библиотеку libpq, используя Visual Studio 7.1 или новее, перейдите в каталог src
и введите команду:
nmake /f win32.mak
Чтобы собрать 64-битную версию клиентской библиотеки libpq, используя Visual Studio 8.0 или выше, перейдите в каталог src
и введите команду:
nmake /f win32.mak CPU=AMD64
Подробнее узнать о поддерживаемых переменных можно в файле win32.mak
.
Чтобы собрать клиентскую библиотеку libpq, используя Borland C++, перейдите в каталог src
и введите команду:
make -N -DCFG=Release /f bcc32.mak
16.2.1. Генерируемые файлы
При сборке будут получены следующие файлы:
interfaces\libpq\Release\libpq.dll
Динамически связываемая клиентская библиотека
interfaces\libpq\Release\libpqdll.lib
Библиотека импорта для связывания программ с
libpq.dll
interfaces\libpq\Release\libpq.lib
Статическая версия клиентской библиотеки
Обычно устанавливать какие-либо клиентские файлы не требуется. Достаточно поместить файл libpq.dll
в тот каталог, где находится исполняемый файл приложения. Не устанавливайте libpq.dll
в каталоги Windows, System
или System32
, если только это не абсолютно необходимо. Если эта библиотека устанавливается программой setup, при установке нужно проверить версию по содержимому включённого в неё ресурса VERSIONINFO
, чтобы более новая версия библиотеки не была заменена старой.
Если вы планируете разрабатывать программы, использующие libpq в текущей системе, вы должны добавить подкаталоги src\include
и src\interfaces\libpq
в путь поиска заголовочных файлов для компилятора.
Чтобы использовать данную библиотеку, вы должны добавить файл libpqdll.lib
в ваш проект. (В Visual C++ просто щёлкните проект правой кнопкой и выберите соответствующее действие.)