De uma maneira geral, uma plataforma atual compatível com o Unix deve ser capaz de executar o PostgreSQL. Na Seção 14.7 estão relacionadas as plataformas onde foram feitos testes específicos até o momento em que esta versão foi liberada. No subdiretório doc da distribuição do código fonte existem diversos documentos FAQ específicos de plataforma, que podem ser consultados em caso de problema.
São necessários os seguintes pacotes de software para construir o PostgreSQL:
É requerido o make do GNU; outros programas make não funcionam. O make do GNU está instalado geralmente sob o nome gmake; este documento sempre fará referência ao make do GNU utilizando este nome (Em alguns outros sistemas o make do GNU é a ferramenta padrão com o nome make [1] ). Para testar o make do GNU deve ser executado
gmake --version
# No Fedora Core 3 (N. do T.)
make --version
GNU Make 3.80
Copyright (C) 2002 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE.
Recomenda-se a utilização da versão 3.76.1 ou mais recente.
É necessário um compilador C ISO/ANSI. Recomenda-se as versões recentes do GCC, mas o PostgreSQL é conhecido por poder ser construído por uma grande variedade de compiladores de diferentes fornecedores.
Antes de tudo é necessário o gzip para descompactar a distribuição.
A biblioteca Readline do GNU (para editar linhas confortavelmente e recuperar o histórico de comandos) é utilizada por padrão. Se não for desejado usá-la então é necessário especificar a opção --without-readline no configure (No NetBSD a biblioteca libedit é compatível com o Readline, sendo utilizada se libreadline não for encontrada). Se estiver sendo utilizada uma distribuição baseada no Linux, esteja ciente que é necessário tanto o pacote readline quanto o pacote readline-devel, caso sejam pacotes separados na distribuição sendo utilizada.
Para construir o PostgreSQL no Windows, é necessário software adicional. O PostgreSQL pode ser construído nas versões do Windows baseadas no NT, como o Windows 2000, XP ou 2003, utilizando o MinGW; para obter detalhes deve ser visto o arquivo doc/FAQ_MINGW na distribuição do código fonte. O PostgreSQL também pode ser construído utilizando o Cygwin; para obter detalhes deve ser visto o arquivo doc/FAQ_CYGWIN na distribuição do código fonte. As construções baseadas no Cygwin funcionam nas versões do Windows mais antigas mas, se houver possibilidade de escolha, recomenda-se utilizar o MinGW. Embora estes sejam os únicos conjuntos de ferramentas recomendados para uma construção completa, é possível construir apenas a biblioteca C cliente (libpq) e o terminal interativo (psql) utilizando outros conjuntos de ferramentas do Windows. Para obter detalhes deve ser visto o Capítulo 15.
Os pacotes a seguir são opcionais. Embora não sejam requeridos pela configuração padrão, são necessários quando certas opções de construção estão ativas, conforme explicado abaixo.
Para construir a linguagem de programação do servidor PL/Perl é necessária uma instalação completa do Perl, incluindo a biblioteca libperl e os arquivos de cabeçalho. Uma vez que o PL/Perl será uma biblioteca compartilhada, a biblioteca libperl também deve ser uma biblioteca compartilhada na maioria das plataformas. Isto parece ser o padrão nas versões recentes do Perl, mas não era nas versões mais antigas e, de qualquer maneira, foi uma escolha de quem instalou o Perl no sistema.
Se não houver a biblioteca compartilhada, mas esta for necessária, uma mensagem como a mostrada abaixo será exibida durante a construção para chamar atenção sobre este fato:
*** Cannot build PL/Perl because libperl is not a shared library. *** You might have to rebuild your Perl installation. Refer to *** the documentation for details.
(Se a saída na tela não for acompanhada, apenas será observado que a biblioteca objeto PL/Perl, plperl.so ou semelhante, não foi instalada). Se esta mensagem for vista, será necessário reconstruir e instalar o Perl manualmente para poder construir o PL/Perl. Durante o processo de configuração do Perl deve ser requerida a geração da biblioteca compartilhada.
Para construir a linguagem de programação do servidor PL/Python é necessária a instalação do Python, incluindo os arquivos de cabeçalho e o módulo distutils. O módulo distutils é incluído por padrão pelo Python 1.6 e posteriores; os usuários das versões mais antigas do Python terão que instalá-lo.
Uma vez que o PL/Python será uma biblioteca compartilhada, a biblioteca libpython também deve ser uma biblioteca compartilhada na maioria das plataformas. Este não é o caso em uma instalação padrão do Python. Se após a construção e instalação houver um arquivo chamado plpython.so (possivelmente com uma extensão diferente), então tudo correu bem. Senão, deve ter sido exibida uma mensagem como esta na tela:
*** Cannot build PL/Python because libpython is not a shared library. *** You might have to rebuild your Python installation. Refer to *** the documentation for details.
Isto significa que é necessário reconstruir (parte) da instalação do Python, para ser gerada a biblioteca compartilhada.
Caso ocorram problemas, deve ser executada a configuração do Python 2.3, ou mais recente, utilizando o sinalizador --enable-shared. Em alguns sistemas operacionais não é necessário construir a biblioteca compartilhada, mas é necessário convencer o construtor do sistema PostgreSQL disso. Para obter detalhes deve ser consultado o arquivo Makefile no diretório src/pl/plpython.
Se for desejado construir a linguagem procedural PL/Tcl, obviamente é necessário instalar o Tcl.
Para ativar o Suporte ao Idioma Nativo (Native Language Support - NLS), ou seja, a capacidade de mostrar as mensagens do programa em um idioma diferente do Inglês, é necessária a implementação da API Gettext. Alguns sistemas operacionais a possuem nativamente (por exemplo, Linux, NetBSD e Solaris), para outros sistemas pode ser baixado um pacote adicional de http://developer.postgresql.org/~petere/bsd-gettext/. Se estiver sendo utilizada a implementação do Gettext da biblioteca C GNU, então há a necessidade adicional do pacote GNU Gettext por alguns programas utilitários. Para nenhuma outra implementação isto é necessário.
Kerberos, OpenSSL ou PAM, se for desejado permitir autenticação ou criptografia utilizando um destes serviços.
Se a construção estiver sendo feita a partir da árvore do CVS em vez do pacote fonte liberado, ou se for desejado fazer desenvolvimento, também são necessários os seguintes pacotes:
O Flex e o Bison do GNU são necessários para construir a saída (checkout) do CVS, ou se forem alterados os arquivos de definição do varredor e do analisador existentes. Se forem necessários, certifique-se de trazer o Flex 2.5.4 ou mais recente, e o Bison 1.875 ou mais recente. Outros programas yacc podem, às vezes, serem utilizados, mas para se fazer isto é necessário um trabalho extra, e não é recomendado. Outros programas lex com certeza não funcionam.
Se for necessário obter um pacote GNU, este pode ser encontrado em um espelho do GNU (veja a relação em http://www.gnu.org/order/ftp.html) ou em ftp://ftp.gnu.org/gnu/.
Verifique, também, se há espaço suficiente no disco. São necessários cerca de 65 MB para a árvore de fontes durante a compilação, e cerca de 15 MB para o diretório de instalação. Um agrupamento de banco de dados vazio ocupa cerca de 25 MB, e os bancos de dados ocupam cerca de cinco vezes a quantidade de espaço ocupada pelos arquivos texto puro contendo os mesmos dados. Se forem executados os testes de regressão serão necessários, temporariamente, mais 90 MB. Para verificar o espaço em disco deve ser utilizado o comando df.
[1] |
No Fedora Core 3 o gmake é um vínculo simbólico para o make (/usr/bin/gmake -> make). (N. do T.) |