Rapidamente, por assim dizer, tenho notado este tópico, pesquisei e existem muitas soluções. No entanto, estas soluções não funcionam para mim, não apenas isso, mas estou pretendendo aprender mais sobre o sistema operacional baseado em Debian.
Perguntas
- Eu gostaria de saber como atualizar o PHP 5.3 para o PHP 5.4.7 compilando-o da fonte sem usar um PPA de terceiros.
- O caminho (explicado abaixo) é a maneira correta de configurar o PHP 5.4? Eu sou novo em compilar a partir da fonte.
Configuração
Eu corro o Ubuntu Server 12.04 64-bit. Eu tenho atualmente:
- PHP 5.3
- MySQL-Server
- Apache2
- Memcached
O problema
Inicialmente instalei o PHP 5.3 usando apt-get
. Eu agora gostaria de atualizar para o PHP 5.4 devido à vantagem de traços em OOP e a estrutura com arrays e todos os outros patches recentes e tal.
Soluções possíveis
Eu vi esse repositório ondrej / ppa, que eu me recuso a usar, dado o fato de que ele pode funcionar, mas é uma fonte desconhecida / não confiável. Além disso, não estou aprendendo como administrar a partir do código-fonte, usando configure , make e instalação de acordo.
Eu vi uma solução compilando a partir do código-fonte, que é essencialmente como eu esperava abordar isso com alguma orientação .
Conclusão
Eu não esperava apenas ser alimentado com uma colher e saí e fiz algumas leituras manuais e, pelo menos, comecei a rolar a bola; isso é o quão longe eu tenho.
A primeira coisa que fiz foi su na raiz (para salvar o sudo de digitar todo o maldito tempo).
$ sudo su
A próxima coisa que fiz foi baixar a última versão do PHP (5.4.7) e extrair seu conteúdo pronto para ser configurado antes de instalá-lo.
$ mkdir php5-new && cd !$
$ wget -O php-5.4.7.tar.bz2 http://php.net/get/php-5.4.7.tar.bz2/from/uk3.php.net/mirror
$ bzip2 -d php-5.4.7.tar.bz2
$ tar xvf php-5.4.7.tar.gz
$ cd php-5.4.7
$ ./configure --help
Por fim, decidi fazer um bash, examinei a lista de opções e decidi listar ALL das coisas que queria incluir na configuração.
$ ./configure --with-mysql --with-apache2 --with-libxml --with-openssl --with-zlib --with-bz2 --with-curl --with-dom --with-gd --with-imap --with-imap-ssl --with-mcrypt --with-mysqli --with-pdo-mysql --with-libxml --enable-ftp --enable-mbstring --enable-soap
Finalmente, os resultados ...
Quando o processo de configuração terminou, ocorreu um erro:
configure: error: xml2-config not found. Please check your libxml2 installation.
Atualização do progresso (solução)
A resposta aceita acaba sendo a solução. Para qualquer um que possa se deparar com essa questão no futuro, adicionarei algumas dicas adicionais (estendendo o que "Ladadadada" declarou abaixo).
Eu esbarrei em outro problema com o OpenSSL, então eu tive que instalar as bibliotecas dev; Eu fiz isso usando:
$ apt-cache search openssl | grep dev
$ apt-get install libssl-dev
$ dpkg -L openssl
Então eu defino --with-openssl=/usr/includes/openssl
, que gemia sobre um evp.h . Eu tentei localizar esse arquivo usando find / -type f -name evp.h
e descobri-lo dentro do diretório /usr/includes/openssl/evp.h
e, portanto, novamente removi =/usr/includes/openssl
.