it-swarm.com.de

PHP mit curl kompilieren, wo wird curl installiert?

Ich muss ein Verzeichnis angeben, wenn ich PHP mit --with-curl= kompiliere.

Die Curl-Binärdatei befindet sich unter /usr/bin/curl.

curl -V gibt mir

curl 7.15.5 (x86_64-redhat-linux-gnu) libcurl/7.15.5 OpenSSL/0.9.8b zlib/1.2.3 libidn/0.6.5

locate curl gibt mir

/usr/bin/curl
/usr/lib/libcurl.so.3
/usr/lib/libcurl.so.3.0.0
/usr/lib64/libcurl.so.3
/usr/lib64/libcurl.so.3.0.0

Entfernte/usr/share/... und andere irrelevante Dateien

UPDATE

Versuchte --with-curl=/usr/lib64 und --with-curl=/usr/lib, obwohl ich mir ziemlich sicher bin, dass es 64-Bit ist.

checking for cURL support... yes
checking if we should use cURL for url streams... no
checking for cURL in default path... not found
configure: error: Please reinstall the libcurl distribution -
    easy.h should be in <curl-dir>/include/curl/

L&OUML;SUNG

PHP erfordert curl-devel

38
HyderA

Bei keinem dieser Befehle können Sie PHP mit aktiviertem cURL kompilieren.

Um mit cURL zu kompilieren, benötigen Sie libcurl-Header-Dateien (.h-Dateien). Sie befinden sich normalerweise in /usr/include/curl. Sie werden in der Regel in einem separaten Paket " development " gebündelt.

Beispiel: Um libcurl in Ubuntu zu installieren:

Sudo apt-get install libcurl4-gnutls-dev

Oder CentOS:

Sudo yum install curl-devel

Dann können Sie einfach folgendes tun:

./configure --with-curl # other options...

Wenn Sie cURL manuell kompilieren, können Sie den Pfad zu den Dateien ohne das Suffix lib oder include angeben. (z. B. /usr/local, wenn sich cURL-Header in /usr/local/include/curl befinden).

89
netcoder

Für Ubuntu 17.0 +

Hinzufügen von @netcoder-Antwort oben.... Wenn Sie Ubuntu 17+ verwenden, ist die Installation von libcurl-Headerdateien die Hälfte der Lösung. Der Installationspfad in Ubuntu 17.0+ unterscheidet sich vom Installationspfad in der älteren Ubuntu-Version. Nach der Installation von libcurl wird immer noch die Fehlermeldung "cURL nicht gefunden" angezeigt. Sie müssen einen zusätzlichen Schritt ausführen (wie von @minhajul im OP-Kommentarabschnitt vorgeschlagen).

Fügen Sie in/usr/include einen Symlink des cURL-Installationsordners hinzu (cURL-Installationspfad in Ubuntu 17.0.4 ist/usr/include/x86_64-linux-gnu/curl). 

Auf meinem Server wurde Ubuntu 17.0.4 ausgeführt, die Befehle zur Aktivierung der cURL-Unterstützung waren

Sudo apt-get install libcurl4-gnutls-dev

Erstellen Sie dann eine Verknüpfung zur cURL-Installation

cd /usr/include
Sudo ln -s x86_64-linux-gnu/curl
8
Usman Shaukat

Versuchen Sie es einfach mit --with-curl, ohne einen Ort anzugeben, und sehen Sie, ob es von alleine gefunden wird.

2
Rob Williams

php curl lib ist nur ein Wrapper von cUrl, also sollten Sie zuerst cUrl ..__ installieren. Laden Sie die cUrl-Quelle auf Ihren Linux-Server. Verwenden Sie dann die folgenden Befehle zur Installation:

tar zxvf cUrl_src_taz
cd cUrl_src_taz
./configure --prefix=/curl/install/home
make
make test    (optional)
make install
ln -s  /curl/install/home/bin/curl-config /usr/bin/curl-config

Kopieren Sie dann die Kopfdateien in "/ curl/install/home/include /" in "/ usr/local/include". Nachdem alle obigen Schritte ausgeführt wurden, konnte die PHP-Curl-Erweiterungskonfiguration die ursprüngliche Curl finden, und Sie können die Standard-PHP-Erweiterungsmethode verwenden, um PHP-Curl zu installieren.
Ich hoffe es hilft dir :)

0
bourneli

Wenn Sie eine 64bit-Version (x86_64) von PHP kompilieren möchten, verwenden Sie: /usr/lib64/

Für Architekturen (i386 ... i686) verwenden Sie /usr/lib/

Ich empfehle, PHP in derselben Architektur wie Apache zu kompilieren. Da Sie ein 64-Bit-Linux verwenden, wird Ihr Apache auch für x86_64 kompiliert.

0
Bob Fanger