Publicidade (Anuncie Aqui)

Instalando o PHP 5.3.0 no Ubuntu

Instalando o PHP 5.3.0 no Ubuntu

Recentemente falei sobre o lançamento do PHP 5.3.0 cheio de novas funções e correções e estou abrindo um servidor web (local) lá em casa, rodando no grande Ubuntu Jaunty (v9.04).

Procurei um pouco na Internet sobre essa instalação e descobri que o PHP 5.3.0 ainda não está totalmente disponível em pacotes prontos para instalação em unix.. Então vi que teria que fazer a instalação “na unha”… Procurei um pouco sobre e vim aqui mostrar pra vocês como fazer isso passo-a-passo.

Vou ensinar aqui a instalara todos os pacotes e bibliotecas “legais” de se ter em um servidor.. Nada de excesso, apenas o essencial.

1. Instale o Apache

O comando a baixo irá fazer o download do Apache 2 e de algumas ferramentas de desenvolvimento necessárias para uma boa integração com o PHP.

Digite isso no seu terminal:

aptitude install apache2 apache2-mpm-prefork apache2-prefork-dev apache2-utils apache2.2-common

2. Instale o MySQL e o PostgreSQL

Normalmente todo pacote de instalação do PHP já vem com o MySQL e o PostgreSQL, só que muita gente não usa o pgSQL… Você pode não instalar ele que não irá afetar em nada na instalação do PHP, mas eu recomendo deixá-lo instalado e depois dar uma olhadinha nele. ;)

aptitude install postgresql-8.3 postgresql-client-8.3 postgresql-client-common postgresql-common postgresql-server-dev-8.3

aptitude install mysql-client mysql-client-5.0 mysql-common mysql-server mysql-server-5.0 mysql-server-core-5.0

3. Instale todas as bibliotecas necessárias

O PHP em si é bem fácil de instalar, configurar e usar… Mas se você quer usar e abusar de todo o poder que ele pode te proporcionar você precisa instalar também algumas bibliotecas que vão te ajudar… Você pode acabar precisando de mais ou menos bibliotecas, depende do seu trabalho.

aptitude install libtidy-dev curl libcurl4-openssl-dev libcurl3 libcurl3-gnutls zlib1g zlib1g-dev libxslt1-dev libzip-dev libzip1 libxml2 libsnmp-base libsnmp15 libxml2-dev libsnmp-dev libjpeg62 libjpeg62-dev libpng12-0 libpng12-dev zlib1g zlib1g-dev libfreetype6 libfreetype6-dev libbz2-dev libxpm4-dev libmcrypt-dev libmcrypt4

4. Baixe o código-fonte do PHP

Vá até o PHP.net e baixe o código fonte da versão 5.3.0 ou use esses comandos no seu terminal:

cd ~
wget http://us3.php.net/get/php-5.3.0.tar.gz/from/this/mirror
tar xvfz php-5-3-0.tar.gz

5. Faça as configurações

Mude o seu diretório atual para o diretório onde você descompactou o código fonte do PHP e digite o seguinte (e enorme!) comando:

./configure -with-apxs2=/usr/bin/apxs2 -with-mysql=/usr -with-mysqli=/usr/bin/mysql_config -with-pgsql=/usr -with-tidy=/usr -with-curl=/usr/bin -with-curlwrappers -with-openssl-dir=/usr -with-zlib-dir=/usr -enable-mbstring -with-xpm-dir=/usr -with-pdo-pgsql=/usr -with-pdo-mysql=/usr -with-xsl=/usr -with-ldap -with-xmlrpc -with-iconv-dir=/usr -with-snmp=/usr -enable-exif -enable-calendar -with-bz2=/usr -with-mcrypt=/usr -with-gd -with-jpeg-dir=/usr -with-png-dir=/usr -with-zlib-dir=/usr -with-freetype-dir=/usr -enable-mbstring -enable-zip -with-pear

A tela ficará rolando várias e várias vezes até de mostrar uma mensagem de erro caso alguma biblioteca esteja faltando ou, caso tudo corra bem, você não precisa tentar novamente e pode pular para o próximo passo.

6. Instalação: Make e o Make Install

Para fazer o PHP funcionar você vai precisar compilar ele (usando o código-fonte que você baixou antes)… Uma vez compilado vai ser possível instalá-lo sem maiores problemas… Então vamos a compilação:

make

Mais uma vez, dezenas e dezenas de páginas de informações técnicas vão pular pela a sua tela.. Vai dar uma volta pois essa compilação demora…. muito. Quanto mais coisa (leia-se biblioteca) você compilar junto do seu PHP, mais vai demorar… Infelizmente o código-fonte do PHP é grande, complicado e avançado… Então simplesmente espere.

No final de tudo, caso o mundo não tenha acabado antes, você vai ver uma mensagem/alerta pedindo pra você rodar o “make test”, você pode rodar esse comando se quiser, mas ainda não é necessário para esse passo.

O passo final da instalação é um comando bem simples:

make -i install

A flag -i no comando serve para omitir um erro que o instalador irá apresentar… Isso acontece pois o Ubuntu usa um arquivo de configurações diferente para o Apache o PHP acaba se perdendo durante o processo de instalação pois não encontra esse arquivo.

7. Adicionando o módulo PHP ao Apache

O PHP precisa ser um módulo do seu servidor WEB para tudo correr bem… Normalmente você não precisaria fazer isso, mas devido ao motivo de uso da flag -i no passo anterior, nós precisamos fazer isso manualmente… Primeiro, mude o diretório:

cd /etc/apache2/mods-available

Agora crie um arquivo chamado php5.load e coloque isso dentro dele:

LoadModule php5_module /usr/lib/apache2/modules/libphp5.so

Salve o arquivo php5.load e crie outro arquivo, agora chamado php5.conf, com o seguinte conteúdo:

AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps

Pronto… Terminamos… Só precisamos habilitar o módulo PHP no Apache e reiniciar o servidor, usaremos esses dois comandos:

a2enmod php5

/etc/init.d/apache2 restart

8. Colocando a “bagaça” pra funcionar

Finalmente terminamos de instalar, compilar e configurar tudo… Agora só precisamos realmente testar se está tudo correndo bem… Primeiro vamos checar a versão do seu PHP:

php -v

Você deve receber uma saída parecida com essa:

PHP 5.3.0 (cli) (built: Jul 1 2009 18:53:06)
Copyright (c) 1997-2009 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2009 Zend Technologies

Se você recebeu algo parecido… Parabéns, você acaba de entrar para um grupo seleto de pessoas que não se renderam aos pacotes de instalação prontos e fizeram tudo NA UNHA!

Um grande abraço para você, meu caro leitor… E um bom início de semana.

Você também vai gostar de ler:

Postado em MySQL, PHP, Tutoriais

Com as tags , , , , , , , , , , , , , , , , , , , , , , , , , ,

Escrito por Thiago Belem

Gostou desse artigo?

Não se esqueça de assinar o RSS e divulgue-o para o mundo:

View Comments

  1. Guilherme Mar disse:

    Bem legal, mas o problema que vejo, que ao compilar, o php não entra nas atualizações de seguranças e melhorias, existe alguma forma de fazer isto acontecer?

    • Thiago Belem disse:

      @Guilherme
      Só há atualizações de pacote quando o pacote está disponível nos repositórios do OS… Quando compilamos as nossas próprias versões temos nós mesmos que cuidar da atualização. Não existe pacote do PHP 5.3.x pro Ubuntu ainda. :)

  2. Reginaldo lim disse:

    Amigão muito legal a explicação mas não consigo instlar o php após o ./configure ele não tem make nem make install nos pacotes , eu ubuntu 9.10, pode me ajudar com isso

    desde já obrigado!

  3. Thiago Pojda disse:

    Cara, resolveu pra mim aqui. :)

    Única diferença foi no pacote “libxpm4-dev”, que não existia. Mas instalei os 2 abaixo e consegui:
    sudo aptitude install libxpm4 libxpm-dev

    $ cat /etc/lsb-release
    DISTRIB_ID=Ubuntu
    DISTRIB_RELEASE=9.04
    DISTRIB_CODENAME=jaunty
    DISTRIB_DESCRIPTION=”Ubuntu 9.04″

    Abraços e obrigado!

  4. Daniel disse:

    @Thiago Rotondar: instalar na mãe ficou estranho ehhehhehe

    @Thiago Belem: Bom artigo. Nada contra LAMPP. Mas o interessante é pelo menos saber como se instala manualmente.

    Abraços

  5. edgar disse:

    Parabéns pela iniciativa.

    Achei muito parecido com o tutorial do Brandon Savage.
    http://www.brandonsavage.net/installing-php-5-3-on-ubuntu/

    Você se baseou nele?

  6. Opa Thiago, parabéns ai pelos artigos principalmente os de PHP e MySQL, são todos de excelente qualidade.

  7. Excelente matéria! #clap

    Eu só não entendo porque – não digo você, Thiago – o pessoal que instala na mãe se achar “superior” aos resto do mundo. Tenho certeza que não é por que conseguiu decorar esses códigos, imensos – diga-se de passagem.

    Mas é isso aí, muito bom!

    Abraços.

  8. Eduardo disse:

    Tenho instalado o Ubuntu Server 9.04 64 bits. Na etapa 3 tava o aptitude respondia que não conseguia encontrar “libxpm4-dev”. Fiz uma pesquisa na internet e descobri que no 64bits usa-se o “libxaw7-dev”.
    Assim deu certo…

  9. Renato Reis disse:

    Esse processo é o mesmo para instalar o PHP 5.3.0 no Debian , acredito que sim.

  10. Ronaldo disse:

    Na boa, pra que fazer tudo na unha se tem como fazer automatico usando o LAMPP?

blog comments powered by Disqus