Compilando o PHP a partir do Pacote

Então você quer ajudar a comunidade PHP mas não sabe como? Uma opção é testar os pacotes Release Candidate da versão 7.4, que deve sair do forno em duas semanas.

Neste post iremos instalar a versão php-7.4.0RC6, lançada na última quinta-feira.

Nota: As instruções a seguir foram executadas no ambiente Linux. Ajustes podem ser necessários para adaptá-las ao seu ambiente.

Instale as Dependências

Primeiro instale as dependências necessárias. Algumas podem já estar instaladas:

sudo apt-get install \
    autoconf \
    bison \
    build-essential \
    git \
    libsqlite3-dev \
    libxml2-dev \
    pkg-config \
    re2c

Baixe o Pacote da Versão

Você pode baixar o pacote diretamente:

curl https://downloads.php.net/~derick/php-7.4.0RC6.tar.gz \
    -o php-7.4.0RC6.tar.gz

Verifique a Integridade do Pacote

Se quiser verificar a integridade do pacote você pode baixar as chaves GPG dos mantenedores dos pacotes do PHP nesta página:

curl https://www.php.net/distributions/php-keyring.gpg \
    -o php-keyring.gpg

Para importar as chaves, execute:

gpg --import php-keyring.gpg

Baixe também o arquivo ASC, usado para checar a integridade do pacote:

curl https://downloads.php.net/~derick/php-7.4.0RC6.tar.gz.asc \
    -o php-7.4.0RC6.tar.gz.asc

E finalmente, para verificar a integridade do pacote:

gpg --verify php-7.4.0RC6.tar.gz.asc php-7.4.0RC6.tar.gz

Extraia o Pacote

Extraia o conteúdo do pacote:

tar -zxvf php-7.4.0RC6.tar.gz

Configure o Pacote

Acesse a pasta criada:

cd php-7.4.0RC6

Para configurar o pacote com as opções básicas de desenvolvimento:

./configure \
    --enable-maintainer-zts \
    --enable-debug \
    --enable-cli

Se quiser conhecer as muitas opções de configuração disponíveis:

./configure --help

Compile o Pacote

Para compilar o pacote, execute:

make

Se quiser compilar (muito) mais rápido:

make -j$(nproc)

Teste o Pacote

Verifique a versão do CLI do PHP que foi gerado:

sapi/cli/php --version

E quais módulos foram instalados:

sapi/cli/php -m

Para rodar os testes, execute:

make test

Se quiser usar mais unidades de processamento, execute:

make TEST_PHP_ARGS=-j$(nproc) test

Ao final dos testes, será apresentada uma opção para enviar um relatório com os resultados para o time de qualidade do PHP:

Imagem do terminal mostrando o resultado da execução dos testes

Você pode confirmar (opção padrão) e informar seu e-mail em seguida, ou salvar os resultados, caso queira enviar depois.

Por enquanto é isso. Bons testes e até a próxima!

Tags: php-src

Ressuscitando o Blog!

Depois de alguns muitos anos, finalmente vou tirar a poeira do blog (de novo). E para começar, nos próximos posts irei mostrar os passos iniciais para montar o ambiente de desenvolvimento do source do PHP.

Isso mesmo! Iremos preparar o ambiente para testar as versões do PHP saindo direto do forno, e a partir daí poderemos aprender como o PHP funciona internamente, além de fazer nossas próprias modificações e contribuir com o desenvolvimento da linguagem.

Até lá!