web-dev-qa-db-ja.com

pecl installpecl_httpが失敗します-php7とhttp.soにアップグレードすると問題が発生します

同様の問題: pecl_httpのロードに失敗しました

だから私はアップグレードPHP7.0にしたかったのですが、すべてが大丈夫。しかし、ownCloudにログインできなかったため、一部のページパッケージが欠落していたと思います。だから私はpecl_httpをインストールしたかった:

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

/usr/lib/php/20151012/http.soが何に役立つのかわかりません。まず、次のようになります。

PHP警告:PHP起動:ダイナミックライブラリを読み込めません '.../http.so' -.../http.so:共有オブジェクトファイルを開くことができません:そのようなファイルまたはディレクトリはありません0行目で不明

その後、私はそれを削除しました、そして少なくともそれはそれが存在しない存在しないと言います。了解しました...では、今何ができますか。何がうまくいかなかったのですか? そのhttp.soファイルを再作成するにはどうすればよいですか?

ところで:*すでに古いバージョンをインストールしようとしました、同じエラー

1
kwoxer

エラーの理由は、Digitalocean SSHコンソールでdo-release-upgradeを実行したためです。そこで私は問題を抱えていましたphpmyadminのアップグレード

そしてそこにそれはちょうど立ち往生しました。そこで、phpmyadminを使用せずに再度アップグレードを行い、その後、最新のphpmyadminを手動でインストールしました。そして今、すべてが大丈夫だった。最後に、カーネルも最新(4.4.0.22)に設定しましたが、すべて問題ありません。 *.soエラーはもうありません。

0
kwoxer

以下はUbuntu16.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

最後にこれを取得しますが、大丈夫です:

install ok: channel://pecl.php.net/pecl_http-3.0.1 [...] Ungültiger Maschinenbefehl (Speicherabzug geschrieben)
1
Tobi