Документация по PostgreSQL 8.4.2 | ||||
---|---|---|---|---|
Prev | Fast Backward | Chapter 16. Установка на Windows из исходных текстов | Fast Forward | Next |
Инструменты для компиляции с помощью Visual C++ 2005, находятся в каталоге src/tools/msvc. При компиляции, убедитесь, что в системном пути PATH нет инструментов из набора MinGW или Cygwin. Также убедитесь, что в системном пути есть все необходмые инструменты, требуемые Visual C++, которые обычно находятся в каталоге Visual Studio Command Prompt и что команды из этого каталога запускаются. Все команды на выполнение компиляции должны запускаться из каталога src\tools\msvc.
Перед компиляцией, измените config.pl, указав в нём необходимые опции настройки, включая пути к используемым библиотекам. Если вам необходимо установить какие-либо другие переменные окружения, создайте файл с именем buildenv.pl и поместите в него требуемые команды. Например, чтобы добавить путь к bison, которого нет в PATH, создайте в файл содержащий:
$ENV{PATH}=$ENV{PATH} . ';c:\some\where\bison\bin';
PostgreSQL будет компилироваться, как Professional (любой редакции), так и Express версией Visual Studio 2005. Для сборки полного пакета также требуются нижеперечисленные дополнительные продукты. Используйте файл config.pl, чтобы указать каталоги доступных библиотек.
ActiveState Perl требуется для запуска скриптов генерирующих процесс компиляции. MinGW или Cygwin Perl работать не будут. ActiveState Perl также должен быть в PATH. Вы можете скачать этот пакет с http://www.activestate.com (Обратите внимание: требуется версия 5.8, Standard Distribution успешно работает.)
Требуется для компиляции PL/TCL (Обратите внимание: требуется версия 8.4, Standard Distribution успешно работает).
Для компиляции из CVS требуются Bison и Flex, но они не нужны, при компиляции из архива подготовленного выпуска. Заметьте, что будут работать только http://gnuwin32.sourceforge.net.
Diff требуется для запуска регрессионных тестов и может быть скачен с http://gnuwin32.sourceforge.net.
Gettext требуется для сборки поддержки NLS и может быть скачен с http://gnuwin32.sourceforge.net. Обратите внимание, что необходимы бинарные пакеты и все файлы, необходимые для их работы, а также файлы для разработки.
Рекомендуется обновиться до последней доступной версии Microsoft Platform SDK, доступной для скачивания с http://www.microsoft.com/downloads/.
Требуется для поддержки авторизации Kerberos. MIT Kerberos можно скачать с http://web.mit.edu/Kerberos/dist/index.html.
Требуется для поддержки XML. Бинарные пакеты могут быть скачены с http://zlatkovic.com/pub/libxml, а исходники с http://xmlsoft.org. Обратите внимание, что libxml2 требует iconv, который доступен для скачивания с того же сайта.
Требуется для поддержки SSL. Бинарные пакеты могут быть скачены с http://www.slproweb.com/products/Win32OpenSSL.html, а исходники с http://www.openssl.org.
Требуется для поддержки UUID-OSSP (только для contrib). Исходники могут быть скачены с http://www.ossp.org/pkg/lib/uuid/.
Требуется для компиляции PL/Python. Бинарные пакеты могут быть скачены с http://www.python.org.
Требуется для поддержки сжатия в pg_dump и pg_restore. Бинарные пакеты могут быть скачены с http://www.zlib.net.
Для компиляции всего PostgreSQL, с настройкам выпуска (по умолчанию), запустите команду:
build
Для компиляции всего PostgreSQL, с настройками включающими отладочные возможности, запустите команду:
build DEBUG
Для компиляции одного проекта, например psql, запустите команды:
build psql build DEBUG psql
Чтобы именить настройки компиляции по умолчанию на отладочные, поместите в buildenv.pl следующую строку:
$ENV{CONFIG}="Debug";
Также возможна компиляция из самой оболочки Visual Studio. В этом случае вам нужно запустить:
perl mkvcbuild.pl
с командой строки и затем открыть в Visual Studio сгенерированный pgsql.sln (в корневом каталоге дерева исходных текстов).
В большинстве случаев, отслеживать изменённые файлы будет автоматическая система отслеживания зависимостей в Visual Studio. Но, если изменений было слишком много, вам может понадобится очистка установки. Чтобы её выполнить, просто запустите команду clean.bat, которая автоматически очистит все сгенерированные файлы. Вы также можете запустить эту команду с параметром dist, в этом случае это будет подобно make distclean и удалит также и файлы, созданные flex/bison.
По умолчанию, все файлы сохраняются в подкаталогах debug или release. Чтобы установить эти файлы, используя стандартные средства, а также сгенерировать файлы, требуемые для инициализации и использования база данных, запустите команду:
perl install.pl c:\destination\directory
Чтобы запустить регрессионные тесты, убедитесь сперва, что вы выполнили компиляцию всех требуемых частей. Также, убедитесь, что все DLL требуемые для загрузке всех частей СУБД (такие как DLL для процедурных языков Perl и Python) находятся в системном пути. Если их там нет, укажите пути к ним в файле buildenv.pl. Чтобы запустить тесты, запустите одну из следующих команд из каталога src\tools\msvc:
vcregress check vcregress installcheck vcregress plcheck vcregress contribcheck
Чтобы изменить используемый планировщик выполнения тестов (по умолчанию параллельный), добавьте желаемый планировщик в командную строку:
vcregress check serial
Больше информации о регрессионных тестов можно получить в Chapter 29.
Компиляция документации PostgreSQL в HTML формат требует некоторых инструментов и файлов. Создайте корневой каталог для всех этих файлов и сохраните их в подкаталоги как перечислено ниже.
Скачайте с http://sourceforge.net/project/downloading.php?groupname=openjade&filename=openjade-1_3_1-2-bin.zip и распакуйте в подкаталог openjade-1.3.1.
Скачайте с http://www.oasis-open.org/docbook/sgml/4.2/docbook-4.2.zip и распакуйте в подкаталог docbook.
Скачайте с http://sourceforge.net/project/downloading.php?groupname=docbook&filename=docbook-dsssl-1.79.zip и распакуйте в подкаталог docbook-dsssl-1.79.
Скачайте с http://www.oasis-open.org/cover/ISOEnts.zip and и распакуйте в подкаталог docbook.
Измените файл buildenv.pl и добавьте переменную, указывающую местоположение вышеуказанного корневого каталога, например:
$ENV{DOCROOT}='c:\docbook';
Чтобы скомпилировать документаци, запустите команду builddoc.bat. Обратите внимание, что эта команда фактически запустит компиляцию дважды для генерации индексов. Сгенерированные HTML файлы будут в каталоге doc\src\sgml.