2016-06-21 10 views
2

Ich versuche, PHP 5.4 mit PHPBrew zu installieren, aber haben diese Fehler:PHPBrew - verschiedene Probleme bei der Installation

-> % phpbrew install 5.4.6 +default +apxs2 +mysql        
===> phpbrew will now build 5.4.6 
===> Loading and resolving variants... 
Checking distribution checksum... 
Checksum matched: c9aa0f4996d1b91ee9e45afcfaeb5d2e 
===> Distribution file was successfully extracted, skipping... 
Found existing Makefile, running make clean to ensure everything will be rebuilt. 
You can append --no-clean option after the install command if you don't want to rebuild. 
===> Running make clean: /usr/bin/make -C '/home/breq/.phpbrew/build/php-5.4.6' --quiet 'clean' 
===> Checking patches... 
Checking patch for replace apache php module name with custom version name 
0 changes patched. 
Found existing build.log, renaming it to /home/breq/.phpbrew/build/php-5.4.6/build.log.1466515643 
===> Configuring 5.4.6... 


Use tail command to see what's going on: 
    $ tail -F /home/breq/.phpbrew/build/php-5.4.6/build.log 


===> Checking patches... 
Checking patch for php5.3.29 multi-sapi patch. 
Checking patch for php5.3.x on 64bit machine when intl is enabled. 
Checking patch for openssl dso linking patch 
===> Building... 
Error: Make failed: 
The last 5 lines in the log file: 
/home/breq/.phpbrew/build/php-5.4.6/ext/openssl/xp_ssl.c:355: undefined reference to `SSLv3_server_method' 

/home/breq/.phpbrew/build/php-5.4.6/ext/openssl/xp_ssl.c:343: undefined reference to `SSLv3_client_method' 

collect2: error: ld returned 1 exit status 

Makefile:244: recipe for target 'sapi/cli/php' failed 

make: *** [sapi/cli/php] Error 1 

Please checkout the build log file for more details: 
    tail /home/breq/.phpbrew/build/php-5.4.6/build.log 

Mit +openssl

-> % phpbrew install 5.4.6 +default +apxs2 +mysql +openssl=/usr/include/openssl 
===> phpbrew will now build 5.4.6 
===> Loading and resolving variants... 
Checking distribution checksum... 
Checksum matched: c9aa0f4996d1b91ee9e45afcfaeb5d2e 
===> Distribution file was successfully extracted, skipping... 
Found existing Makefile, running make clean to ensure everything will be rebuilt. 
You can append --no-clean option after the install command if you don't want to rebuild. 
===> Running make clean: /usr/bin/make -C '/home/breq/.phpbrew/build/php-5.4.6' --quiet 'clean' 
===> Checking patches... 
Checking patch for replace apache php module name with custom version name 
0 changes patched. 
Found existing build.log, renaming it to /home/breq/.phpbrew/build/php-5.4.6/build.log.1466516015 
===> Configuring 5.4.6... 


Use tail command to see what's going on: 
    $ tail -F /home/breq/.phpbrew/build/php-5.4.6/build.log 


Error: Configure failed: 
The last 5 lines in the log file: 
checking for Kerberos support... no 

checking for DSA_get_default_method in -lssl... no 

checking for X509_free in -lcrypto... yes 

checking for pkg-config... /usr/bin/pkg-config 

configure: error: Cannot find OpenSSL's <evp.h> 

Please checkout the build log file for more details: 
    tail /home/breq/.phpbrew/build/php-5.4.6/build.log 

Mein OS: Xubuntu 16.10 + PHP 7.07

-> % tail /home/lmalicki/.phpbrew/build/php-5.4.6/build.log 
checking whether to enable LIBXML support... yes 
checking libxml2 install dir... /usr 
checking for xml2-config path... /usr/bin/xml2-config 
checking whether libxml build works... yes 
checking for OpenSSL support... yes 
checking for Kerberos support... no 
checking for DSA_get_default_method in -lssl... no 
checking for X509_free in -lcrypto... yes 
checking for pkg-config... /usr/bin/pkg-config 
configure: error: Cannot find OpenSSL's <evp.h> 

Antwort

0

Ich sehe aus, als ob Sie einige Abhängigkeiten fehlen.

Versuchen mit ssl dev Paket installieren Sie zuerst:

apt-get install libssl-dev 

PHPBrew nur Downloads und kompiliert php, aber es nicht erforderlich dependecies in Ihrem Betriebssystem installieren.

EDIT:

Ich habe gerade bemerkt, dass Sie Pfad für OpenSSL-Bibliothek in +openssl=/usr/include/openssl zur Verfügung gestellt haben.

Sind Sie sicher, dass es da ist? Sie können es mit which openssl überprüfen. Dieser Befehl gibt den Pfad von openssl binary zurück.

Sie können auch versuchen, den Pfad einfach zu entfernen, da PHPBrew die richtige Binärdatei finden sollte.

+0

->% sudo apt-get libssl-dev Paketlisten werden gelesen ... Fertig Abhängigkeitsbaum Lesen Statusinformation installieren ... Fertig libssl-dev ist bereits die neueste Version (1.0.2h-1 + deb.sury.org ~ xenial + 1). 0 aktualisiert, 0 neu installiert, 0 zu entfernen und 40 nicht aktualisiert. – breq

+0

Bitte sehen Sie meine aktualisierte Antwort. –

0

Da + OpenSSL-Richtlinie ist eigentlich ein Präfix nicht enthalten Pfad bereitstellt, versuchen

+openssl=/usr -- --with-libdir=lib64 
+0

mit dieser Lösung, die ich habe: für die Kerberos-Unterstützung Überprüfung ... keine für DSA_get_default_method in -lssl Überprüfung ... keine für X509_free in -lcrypto Überprüfung ... ja für pkg-config Überprüfung .. ./usr/bin/pkg-config configure: Fehler: Kann die OpenSSL-Bibliotheken nicht finden – breq

+0

Können Sie das ganze Build-Protokoll nicht nur die letzten 10 Zeilen einschließlich des Befehls config einfügen? – canto

0
configure: error: Cannot find OpenSSL's <evp.h> 

Dieses Problem kann passieren, wenn Sie neuere Version von OpenSSL installiert haben, dann Ihrer Distribution.

Wenn Sie ubuntu verwenden, müssen Sie möglicherweise Ihre Pakete zurückstufen. (Aber wahrscheinlich haben Sie eine andere Version aus einem Grund so installiert, dass hier vorsichtig sein)

#file etc/apt/preferences.d/allow-downgrade 

Package: * 
Pin: release o=Ubuntu 
Pin-Priority: 1001 

dann

sudo apt-get update 
sudo apt-get upgrade 

und Optionen

-- --with-openssl=/path/to/libs 

oder

+openssl 

sollte funktioniert gut.

Wenn Sie bereits einige misfunctioning PHP von PHPbrew installiert haben nicht mit

phpbrew switch recently_installed_php_ver_number_here 
0

auf Ubuntu 16 wechseln vergessen.10

sudo apt-get install libssl-dev 
sudo apt-get install libcurl4-openssl-dev 
sudo apt-get install clibcurl4-openssl-dev pkg-config libssl-dev libsslcommon2-dev 

dann erneut ausgeführt

phpbrew install 5.4.6 +default +apxs2 +mysql +openssl=/usr/include/openssl 
Verwandte Themen