Felix Costa
"As falhas são o combustÃvel do sucesso"
"As falhas são o combustÃvel do sucesso"
Esta semana precisei compilar o apache a partir dos fontes. Foi uma experiência interessante, já que sempre utilizei a versão empacotada no meu server debian etch.
Decidi aceitar o desafio mais por uma questão didática, acho a experiência de compilar pacotes grandes e com variadas dependências essencial para conhecer profundamente determinado software.
O ambiente foi montado sobre um servidor Debian Etch e não utilizei as versões empacotadas dos respectivos softwares instalados. Antes de mais nada quero salientar que não tenho nada contra os pacotes deb muito pelo contrário. O debian possui excelentes ferramentas para gerenciamento de pacotes. Tive apenas a necessidade de utilizar versões mais atuais do apache e do subversion para poder utilizar o Trac e trabalhar em meus projetos em python
Softwares necessários
Apache 2.2.9
http://www.apache.org/dist/httpd/httpd-2.2.9.tar.gz
HTTP Server propriamente dito em sua última versão
Mod_Python 3.3.1
http://www.apache.org/dist/httpd/modpython/mod_python-3.3.1.tgz
Módulo do apache que permite utilizemos a linguagem python para desenvolver para web.
APR 1.3.2
http://www.apache.org/dist/apr/apr-1.3.2.tar.gz
Biblioteca utilizado tanto pelo apache como pelo subversion que provê uma API que assegura que o código desenvolvido tenha o mesmo comportamento em plataformas específicas.
APR-Util 1.3.2
http://www.apache.org/dist/apr/apr-util-1.3.2.tar.gz
Mais bibliotecas utilizadas pelo APR
Subversion 1.4.6
http://subversion.tigris.org/downloads/subversion-1.4.6.tar.gz
Sistema de controle de versões.
SWIG 1.3.35
http://ufpr.dl.sourceforge.net/sourceforge/swig/swig-1.3.35.tar.gz
Ferramenta de desenvolvimento que conecta programas escritos em c/c++ com uma enorme variedade de linguagens de alto nível.
Instalando
Para facilitar vou citar apenas o processo de compilação dos softwares. O processo de descompactação está bem explicado em outros tutoriais pela internet e os pacotes foram descompactado em /usr/src e a instalação será feita como root.
Instalação das bibliotecas apr e apr-util
O Pacote apr e apr-util serão instalados em /usr/local/apr
Para compilar o apr
# ./configure
# make
# install
Entre nos diretórios dos fontes do apr-util e execute:
#./configure -with-apr=/usr/local/apr/
# make
# make install
Instalação do Apache
Os pacotes foram instalados com os comandos abaixo. As opções utilizadas em ./configure serão detalhadas em outro artigo. A instalação padrão será no diretório /usr/local/apache2
# ./configure –enable-rewrite=shared –enable-speling=shared –enable-so –enable-dav –with-apr=/usr/local/apr –with-apr-util=/usr/local/apr/bin/apu-1-config –enable-proxy –enable-proxy-connect –enable-proxy-ftp –enable-proxy-http –enable-ssl –enable-http –enable-info –enable-dav –enable-suexec –enable-cgi –enable-dav-fs –enable-dav-lock –enable-vhost-alias # make
# make install
Instalação Mod_Python# ./configure –with-apxs=/usr/local/apache2/bin/apxs -with-python=/usr/bin/python
# make
# make install
Acesse o arquivo de configuração do apache em:
# /usr/local/apache2/conf/httpd.conf
Descomente a linha ServerName e adicione o nome do seu servidor, ex.
ServerName server.exemplo.com.br
Vamos iniciar o apache com o comando:
# /usr/local/apache2/bin/apachectl start
Agora já temos um servidor http instalado e configurado com os módulos dav e mod_python.
Voltaremos a configuração do servidor em um próximo post, contendo a instalação do subversion e o trac.
Referências:
Apache – www.apache.org
Mod_Python – www.modpython.org
Subversion – subversion.tigris.org
Trac – trac.edgewall.org/