As per title, I am simply trying to install pecl_http extension for php in ubuntu.
So I did what makes most sense:
andreas@earl ~ $ sudo pecl install pecl_http
downloading pecl_http-1.6.6.tgz ...
Starting to download pecl_http-1.6.6.tgz (173,645 bytes)
.....................................done: 173,645 bytes
71 source files, building
running: phpize
Configuring for:
PHP Api Version: 20041225
Zend Module Api No: 20060613
Zend Extension Api No: 220060519
1. whether to enable cURL HTTP requests; specify libcurl directory : yes
1-1, 'all', 'abort', or Enter to continue:
1. whether to enable support for gzencoded/deflated message bodies; specify zlib directory : yes
1-1, 'all', 'abort', or Enter to continue:
1. whether to enable response content type guessing; specify libmagic directory : no
1-1, 'all', 'abort', or Enter to continue:
1. whether to depend on extensions which have been built shared : yes
1-1, 'all', 'abort', or Enter to continue:
building in /var/tmp/pear-build-root/pecl_http-1.6.6
running: /tmp/pear/temp/pecl_http/configure --with-http-curl-requests --with-http-zlib-compression --with-http-magic-mime=no --with-http-shared-deps
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for a sed that does not truncate output... /bin/sed
checking for gcc... gcc
.... <snip>
checking for unistd.h... (cached) yes
checking for gethostname... yes
checking for getdomainname... yes
checking for getservbyport... yes
checking for getservbyname... yes
checking for zlib.h... found in /usr
checking for zlib version >= 1.2.0.4... 1.2.3.3
checking for curl/curl.h... not found
configure: error: could not find curl/curl.h
ERROR: `/tmp/pear/temp/pecl_http/configure --with-http-curl-requests --with-http-zlib-compression --with-http-magic-mime=no --with-http-shared-deps' failed
so Ok, I don't have curl in the system, so I do
andreas@earl ~ $ sudo apt-get install php5-curl
Curl installed fine, so I tried installing php5-http again, but still the same error.
Anyone could share a light please? :(
-aw
The message you are getting is not indicating that the PHP curl package is missing.
Instead, the problem is that you don't seem to have the "system" curl package -- or, at least, not in its "development" version, that contains the files required to compile pecl_http
.
Judging from a quick apt-cache search
:
$ LANG=en apt-cache search libcurl dev
libcurl4-gnutls-dev - Development files and documentation for libcurl (GnuTLS)
libcurl4-openssl-dev - Development files and documentation for libcurl (OpenSSL)
...
You probably have to install either libcurl4-gnutls-dev
or libcurl4-openssl-dev
.
(The last time I compiled PHP, I installed the first one of those, and it allowed me to compile PHP with curl support enabled)
or.. just sudo apt-get install libcurl3-dev
will provide curl/curl.h
and your pecl_http
installation will continue
Late but that solved my problem on Ubuntu 13.04:
sudo apt-get install -y curl libcurl3 libcurl4-gnutls-dev libmagic-dev
then sudo pecl install pecl_http
.
Credits: http://web.onassar.com/blog/2012/07/15/installing-pecl-http-package-on-ubuntu-11-10/
This is worked on my Ubuntu 12.10
sudo apt-get install libcurl3-openssl-dev
sudo pecl install -a pecl_http
sudo sh -c "echo 'extension=http.so' > /etc/php5/mods-available/http.ini"
sudo ln -s /etc/php5/mods-available/http.ini /etc/php5/conf.d/
You will need to restart your web server, to have this module loaded.
sudo service apache2 restart
or
sudo service nginx restart
来源:https://stackoverflow.com/questions/1933985/installing-pecl-http-in-xubuntu