Estou tentando recompilar o PHP, mas ./configure falha em:
configure: error: Cannot find OpenSSL's <evp.h>
Eu tenho o LibSSL 1.0.0, LibSSL 0.9.8, LibSSL-Dev, OpenSSL instalado.
--with-openssl=/usr/include/openssl
quando tento com
--with-openssl
diga-me:
configure: error: Não foi possível encontrar as bibliotecas do OpenSSL
Onde diabos estão o problema?
PS Php é 5.2.5, SO é Ubuntu
libcurl4-openssl-dev
diferençalibssl-dev
?Para compilar o php-5.3 no Debian wheezy, você precisa do seguinte para corrigir este erro.
Então você precisa configurar com o seguinte
fonte
--with-php-config /usr/local/src/php-x.x.x/scripts/php_config
. Eu escrevi um tutorial sobre como compilar o PHP com extensões.Supondo que você já tenha as bibliotecas OpenSSL e os arquivos de cabeçalho (nos sistemas rpm, os últimos estão no pacote xxxx-devel) ...
O problema parece surgir de como
configure
resolve dependências distribuídas pelo sistema de arquivos. Para compilar o código, o compilador precisa saber onde estão os cabeçalhos. Para vincular o código, o vinculador precisa saber onde estão as bibliotecas.O diretório include possui o arquivo include, mas o pkg-config falha porque a biblioteca não está em / usr / include / openssl, está em / usr / lib
Executando configure novamente com / usr como o diretório:
O caminho passado como argumento é pesquisado para encontrar os recursos relevantes.
fonte
php-7.1.12
sobreDebian Jessie
. ObrigadoOutra razão
./configure
pode falhar é porque você nãopkg-config
instalou, como no meu caso com o PHP7 e o Debian Jessie:fonte
Para compilar o php-5.4.45 no debian 8.1 (Jessie), tive que:
Depois disso, eu poderia compilá-lo usando
--with-openssl
fonte
Corrigi o problema instalando bibliotecas extras
fonte
No centos7, instale o openssl-devel
yum install openssl-devel
fonte
Você precisa ajudar a configurar para descobrir onde procurar o arquivo evp.h, porque, por padrão, ele procura diretórios e adiciona sufixos codificados a eles para encontrá-lo. Eu guardei os detalhes na minha página wiki para aqueles que querem entender a solução. Aqui está o que funcionou para mim:
YMMV (os caminhos são diferentes). Se isso não funcionou, verifique a página da wiki , o ajudará a descobrir quais caminhos colocar.
fonte
Eu tive o mesmo problema no Fedora 19, apesar de ter o OpenSSL instalado.
Eu tive que instalar o openssl-devel.i686, que encontrei fazendo uma pesquisa genérica por todos os pacotes relacionados ao ssl:
Então eu executei o configure novamente com sucesso:
fonte
Apenas o meu feedback: Depois de resolver esse problema de ssl neste post, desisti completamente de compilar o php 5.3 porque ele falhou mais nas extensões do zend dom no meio, encontrei alguns patches e decidi simplesmente deixar esse barulho . Há o ubuntu 12.04 que ainda possui 5.3.10 php a bordo. Tenha cuidado com o php-fpm na época limpando variáveis de ambiente. Portanto, não se surpreenda quando não puder passar variáveis globais da janela de encaixe, por exemplo.
fonte