Compilando o PHP e instalando-o em um diretório

1

Eu tenho que compilar algumas versões do PHP no trabalho, mas eu preciso de um serviço apache para cada versão em execução, como temos no Windows. No entanto, as opções de configuração parecem ter pastas diferentes para tudo. Eu queria saber se havia uma maneira fácil de configurar assim quando eu faço a instalação é tudo em uma pasta, com todas as extensões em ext etc, em vez de espalhadas pelo sistema.

Eu quero compilar 5.5.1, 5.3.27, 5.2.17 e 4.3.11.

Agora, isso não seria um problema com apenas uma versão do PHP, mas com várias versões, as coisas provavelmente serão sobrescritas / conflituadas de outras maneiras.

Digamos que eu queira que tudo vá para /php/5.5.1/

./ configure --prefix = /php/5.5.1/

De que outra forma isso é configurado para colocar tudo nessa pasta? Alguém mais fez isso?

    
por Anon343224user 05.08.2013 / 11:39

2 respostas

1

O --prefix fará com que todas as páginas man, arquivos de configuração e includes sejam compiladas nesse local. O --exec-prefix fará o mesmo apenas para executáveis e extensões

./configure --prefix=/php/5.5.1/ --exec-prefix=/php/5.5.1//exec
    
por 05.08.2013 / 12:33
1

Você pode querer tentar usar phpbrew em vez de instalar estes o seu self. phpbrew é um frontend que pode ajudar com o gerenciamento, comutação e compilação de diferentes versões do PHP. Ele funciona de forma semelhante ao perlbrew para o Perl.

Exemplo

Para ver quais versões você configurou:

$ phpbrew known
Available stable versions:
    php-5.3.10
    php-5.3.9
    php-5.3.8
    php-5.3.7

Para instalar uma versão:

$ phpbrew -d install --test php-5.4.0

Para usar uma versão:

$ phpbrew use php-5.4.0RC7

Para tornar seu padrão uma versão diferente:

$ phpbrew switch php-5.4.0

E o Apache

phpbrew pode fornecer a você a capacidade de incluir variantes, para que você possa incluir coisas como suporte a mysql ou suporte a Apache ( apxs ).

$ phpbrew install php-5.3.10 +mysql +apxs2

Se você tiver sua própria versão do Apache instalada, poderá direcionar phpbrew para seu local:

$ phpbrew install php-5.3.10 +mysql +apxs2=/usr/local/bin/apxs2

Você precisará manter versões diferentes dos arquivos Apache httpd.conf para cada PHP individual, se estiver usando-o com um servidor da Web.

    
por 05.08.2013 / 13:04