Heim >PHP-Framework >Swoole >Was tun, wenn die Swoole-Kompilierung fehlschlägt?
swooleWas soll ich tun, wenn die Kompilierung fehlschlägt?
Während des Swoole-Kompilierungs- und Installationsprozesses sind Fehler wie „perl: warning: Falling back to the standard locale („C“)“ aufgetreten:
perl: warning: Setting locale failed. perl: warning: Please check that your locale settings: LANGUAGE = "en_US.UTF-8", LC_ALL = "", LANG = "AMERICAN_AMERICA.UTF-8" are supported and installed on your system. perl: warning: Falling back to the standard locale ("C").
Lösung:
Fügen Sie den folgenden Inhalt zur ~/.bashrc-Datei hinzu
export LANGUAGE="en_US.UTF-8" export:zh_CN.UTF-8 export LC_ALL=C
Führen Sie dann den folgenden Befehl aus, um ihn wirksam zu machen:
source /root/.bashrc
configure: error: C++ preprocessor “/lib/cpp” fails sanity check configure: error: in `/wwwroot/swoole-4.2.5': configure: error: C++ preprocessor "/lib/cpp" fails sanity check
Die Ursache des Problems liegt darin, dass erforderliche C++-Bibliotheken fehlen. Führen Sie den folgenden Befehl aus, um das Problem zu lösen:
yum install glibc-headers yum install gcc-c++
“Enable http2 support, require nghttp2 library” 错误 /wwwroot/swoole-4.2.5/php_swoole.h:142:2: error: #error "Enable http2 support, require nghttp2 library." #error "Enable http2 support, require nghttp2 library."
Need to install nghttp2, installiere zuerst die abhängige Bibliothek
sudo yum -y groupinstall "Development Tools" sudo yum -y install openssl-devel libxml2-devel libev-devel jemalloc-devel python-devel wget https://c-ares.haxx.se/download/c-ares-1.12.0.tar.gz -O /tmp/c-ares.tar.gz mkdir -p /tmp/c-ares tar -zxvf /tmp/c-ares.tar.gz -C /tmp/c-ares --strip-components=1 cd /tmp/c-ares && ./configure --libdir=/usr/lib64 make sudo make install wget http://www.digip.org/jansson/releases/jansson-2.9.tar.gz -O /tmp/jansson.tar.gz mkdir -p /tmp/jansson tar -zxvf /tmp/jansson.tar.gz -C /tmp/jansson --strip-components=1 cd /tmp/jansson && ./configure --libdir=/usr/lib64 make make check sudo make inst
Install nghttp2 service:
wget https://github.com/nghttp2/nghttp2/releases/download/v1.19.0/nghttp2-1.19.0.tar.gz -O /tmp/nghttp2.tar.gz mkdir -p /tmp/nghttp2 tar -zxvf /tmp/nghttp2.tar.gz -C /tmp/nghttp2 --strip-components=1 cd /tmp/nghttp2 && ./configure --enable-app make sudo make install
hiredis is not exist
/wwwroot/swoole-4.2.5/swoole_redis.c:20:29: fatal error: hiredis/hiredis.h: No such file or directory #include <hiredis/hiredis.h>
Redis- und Hiredis-Dienste müssen installiert werden.
Redis installieren:
yum -y install tcl wget http://download.redis.io/releases/redis-3.0.7.tar.gz tar xzf redis-3.0.7.tar.gz cd redis-3.0.7 make make test make install
Hiredis installieren:
wget https://github.com/redis/hiredis/archive/v0.14.0.tar.gz tar xzf v0.14.0.tar.gz cd hiredis-0.14.0/ make make install
Das obige ist der detaillierte Inhalt vonWas tun, wenn die Swoole-Kompilierung fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!