1

Similar issue: pecl_http failed to load

So I wanted to upgrade to PHP7.0 and I believed all was fine. But I think I was missing somepages packages because i.e. I was not able to login into my ownCloud. So I wanted to install pecl_http with:

pecl install pecl_http PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/http.so' - /usr/lib/php/20151012/http.so: cannot open shared object file: No such file or directory in Unknown on line 0 downloading pecl_http-3.0.1.tgz ... Starting to download pecl_http-3.0.1.tgz (197,372 bytes) .............done: 197,372 bytes 71 source files, building running: phpize Configuring for: PHP Api Version: 20151012 Zend Module Api No: 20151012 Zend Extension Api No: 320151012 where to find zlib [/usr] : where to find libcurl [/usr] : where to find libevent [/usr] : where to find libidn [/usr] : building in /tmp/pear/temp/pear-build-root0suVKL/pecl_http-3.0.1 running: /tmp/pear/temp/pecl_http/configure --with-php-config=/usr/bin/php-config --with-http-zlib-dir=/usr --with-http-libcurl-dir=/usr --with-http-libevent-dir=/usr --with-http-libidn-dir=/usr 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 cc... cc checking whether the C compiler works... yes checking for C compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether cc accepts -g... yes checking for cc option to accept ISO C89... none needed checking how to run the C preprocessor... cc -E checking for icc... no checking for suncc... no checking whether cc understands -c and -o together... yes checking for system library directory... lib checking if compiler supports -R... no checking if compiler supports -Wl,-rpath,... yes checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu checking for PHP prefix... /usr checking for PHP includes... -I/usr/include/php/20151012 -I/usr/include/php/20151012/main -I/usr/include/php/20151012/TSRM -I/usr/include/php/20151012/Zend -I/usr/include/php/20151012/ext -I/usr/include/php/20151012/ext/date/lib checking for PHP extension directory... /usr/lib/php/20151012 checking for PHP installed headers prefix... /usr/include/php/20151012 checking if debug is enabled... no checking if zts is enabled... no checking for re2c... no configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers. checking for gawk... gawk checking whether to enable extended HTTP support... yes, shared checking for egrep... (cached) /bin/grep -E checking for a sed that does not truncate output... (cached) /bin/sed checking how to run the C preprocessor... cc -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for off_t... yes checking for mbstate_t... yes checking netdb.h usability... yes checking netdb.h presence... yes checking for netdb.h... yes checking for unistd.h... (cached) yes checking wchar.h usability... yes checking wchar.h presence... yes checking for wchar.h... yes checking wctype.h usability... yes checking wctype.h presence... yes checking for wctype.h... yes checking arpa/inet.h usability... yes checking arpa/inet.h presence... yes checking for arpa/inet.h... yes checking for gethostname... yes checking for getdomainname... yes checking for mbrtowc... yes checking for mbtowc... yes checking for iswalnum... yes checking for inet_pton... yes checking for idna.h... found in /usr checking for libidn version... 0.26 checking for zlib.h... found in /usr checking for zlib version >= 1.2.0.4... 1.2.8 checking for curl/curl.h... found in /usr checking for curl-config... found: /usr/bin/curl-config checking for curl version >= 7.18.2... 7.35.0 checking for HTTP2 support in libcurl... no checking for SSL support in libcurl... yes checking for OpenSSL support in libcurl... no checking for GnuTLS support in libcurl... yes checking gnutls.h usability... no checking gnutls.h presence... no checking for gnutls.h... no checking for NSS support in libcurl... no checking for SecureTransport support in libcurl... no checking for GSKit support in libcurl... no checking for ares support in libcurl... no checking whether CURLOPT_TLSAUTH_TYPE expects CURL_TLSAUTH_SRP or literal "SRP"... "SRP" checking for bundled SSL CA info... /etc/ssl/certs/ca-certificates.crt checking for event2/event.h... not found configure: WARNING: continuing without libevent support checking for ext/raphf support... PHP Warning: PHP Startup: Unable to load dynamic library '/usr/lib/php/20151012/http.so' - /usr/lib/php/20151012/http.so: cannot open shared object file: No such file or directory in Unknown on line 0 no configure: error: Please install pecl/raphf and activate extension=raphf.so in your php.ini ERROR: `/tmp/pear/temp/pecl_http/configure --with-php-config=/usr/bin/php-config --with-http-zlib-dir=/usr --with-http-libcurl-dir=/usr --with-http-libevent-dir=/usr --with-http-libidn-dir=/usr' failed 

I don't have an idea what the /usr/lib/php/20151012/http.so is good for. First it should me something like:

PHP Warning: PHP Startup: Unable to load dynamic library '.../http.so' - .../http.so: cannot open shared object file: No such file or directory in Unknown on line 0

After that I just deleted it and at least it says it does not exist. Alright... so what can I do right now. What has gone wrong? How can I recreate that http.so file?

Btw: * already tried to install an older version, same error

2 Answers 2

1

The following works on Ubuntu 16.04:

sudo pecl uninstall propro sudo pecl uninstall raphf sudo apt-get install php-raphf php-raphf-dev php-propro php-propro-dev sudo pecl install pecl_http 

At the end you'll get this, but its ok:

install ok: channel://pecl.php.net/pecl_http-3.0.1 [...] Ungültiger Maschinenbefehl (Speicherabzug geschrieben) 
1
  • This works on Ubuntu 18.04: Commented Jun 22, 2018 at 19:17
0

The reason for the errors was that I did a do-release-upgrade on my Digitalocean SSH console. There I had trouble with upgrading phpmyadmin.

And there it just stucked. So I did again an upgrade without phpmyadmin and installed latest phpmyadmin after that by hand. And now all was fine. Finally I also set the kernel to the latest (4.4.0.22) and now all is fine. No *.so errors anymore.

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.