web-dev-qa-db-ja.com

curlを使用してphpをコンパイルします。curlはどこにインストールされますか?

--with-curl=でphpをコンパイルするときにディレクトリを指定する必要があります

Curlバイナリは/usr/bin/curlにあります

curl -Vは私に

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は私に

/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

/ usr/share/...およびその他の無関係なファイルを削除しました

[〜#〜] update [〜#〜]

--with-curl=/usr/lib64--with-curl=/usr/libを試してみましたが、64ビットだと確信しています。

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/

[〜#〜] solution [〜#〜]

PHPにはcurl-develが必要です

41
HyderA

これらのいずれも、cURLを有効にしてPHPをコンパイルできません。

CURLでコンパイルするには、libcurlヘッダーファイル(.hファイル)が必要です。それらは通常/usr/include/curl。通常、これらは別個のdevelopmentパッケージにバンドルされています。

たとえば、Ubuntuにlibcurlをインストールするには:

Sudo apt-get install libcurl4-gnutls-dev

またはCentOS:

Sudo yum install curl-devel

その後、あなたはちょうどすることができます:

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

CURLを手動でコンパイルする場合、libまたはincludeサフィックスなしでファイルへのパスを指定できます。 (例:/usr/local cURLヘッダーが/usr/local/include/curl)。

96
netcoder

buntu 17.0 +の場合

上記の@netcoderの回答に追加します。Ubuntu17+を使用している場合、libcurlヘッダーファイルのインストールはソリューションの半分です。 ubuntu 17.0+のインストールパスは、古いUbuntuバージョンのインストールパスとは異なります。 libcurlをインストールした後でも、「cURLが見つかりません」というエラーが表示されます。追加のステップを1つ実行する必要があります(OPコメントセクションの@minhajulで提案されているとおり)。

CURLインストールフォルダーの/ usr/includeにシンボリックリンクを追加します(Ubuntu 17.0.4のcURLインストールパスは/ usr/include/x86_64-linux-gnu/curlです)。

私のサーバーはUbuntu 17.0.4を実行していましたが、cURLサポートを有効にするコマンドは

Sudo apt-get install libcurl4-gnutls-dev

次に、cURLインストールへのリンクを作成します

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

場所を指定せずに--with-curlだけを試して、それが単独で見つかるかどうかを確認します。

2
Rob Williams

php curl libはcUrlの単なるラッパーであるため、まずはcUrlをインストールする必要があります。 LinuxサーバーにcUrlソースをダウンロードします。次に、次のコマンドを使用してインストールします。

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

次に、「/ curl/install/home/include /」内のヘッドファイルを「/ usr/local/include」にコピーします。上記のすべての手順が完了すると、php curl拡張機能の構成は元のcurlを見つけることができ、標準のphp拡張機能を使用してphp curlをインストールできます。
お役に立てば幸いです:)

0
bourneli

64bitバージョン(x86_64)のphpをコンパイルする場合:/usr/lib64/

アーキテクチャ(i386 ... i686)の場合は、/usr/lib/

PhpをApacheと同じアーキテクチャにコンパイルすることをお勧めします。 64ビットLinuxを使用しているため、Apacheもx86_64用にコンパイルされていると想定しています。

0
Bob Fanger