swoole Mac でコンパイル エラーが発生した場合はどうすればよいですか? Mac に swoole をインストールするときに発生する可能性のあるエラー
続行する前にこれをお読みください
1. pecl を使用して swoole をインストールします (インストールされていません)
2018 年 4 月に homebrew の変更により、php 拡張機能のインストールに brew install を使用できなくなりましたが、現在は pecl を使用してインストールされています。pecl で swoole をインストールする方法は次のとおりです:
pecl install swoole
オプションに表示されます 記入してくださいはいまたはいいえ
考えられるエラーと解決策
1 致命的なエラー: 'openssl/ssl.h' ファイルが見つかりません
解決策 1: cp -R /usr/local/ opt/openssl/include/openssl /usr/local/include
解決策 2: ln -s /usr/local/opt/openssl/include/openssl /usr/local/include/ openssl
理由: 通常、brew でインストールされたソフトウェアは、インクルードする必要のあるファイルを自動的に /usr/local/include に配置しますが、openssl のインストール時になぜそこに配置されなかったのかわからないため、自分でコピーする必要があります。以前は、リンクを作成する、つまり解決策 2 を使用するのが最良の方法でした。
2 エラー: libpq-fe.h が見つかりません。libpq を確認するか、正しい PostgreSQL(libpq) インストール パスを指定してください
解決策 brew reinstall PostgreSQL
原因: PostgreSQL の可能性がありますがインストールされていません
3 致命的なエラー: 'hiredis/hiredis.h' ファイルが見つかりません
この理由のほとんどは、hiredis がインストールされていないためです。インストール. インストールがない場合は、brew install hitis を使用してインストールしてください。その後、もう一度 pecl install swoole を実行してください。
注意深い子供たちは、brew install hitis を実行した後、/usr/ に追加の hitis があることに気づくでしょう。 local/include、これはソフト リンクで、/usr/local/Cellar/hiredis/0.13.3/include/hiredis
にリンクされています。結果はまだエラーであり、解決されていません。
2. swoole をインストールする方法を変更します (完璧な解決策)
2.1 swoole をダウンロードします
sudo pecl download swoole
2.2 コンパイルしてインストールします
tar zxvf swoole-4.2.12.tgz // 注意自己下载的版本,可能不一定 cd swoole-4.2.12 phpize ./configure --enable-openssl --enable-http2 --enable-sockets --enable-mysqlnd -with-openssl-dir=/usr/local/Cellar/openssl/1.0.2s/ make clean && make && sudo make install
2.3エラーが発生しました
mkdir: /usr/local/Cellar/php@7.1/7.1.30/pecl: File exists mkdir: /usr/local/Cellar/php@7.1/7.1.30/pecl: No such file or directory make: *** [install-modules] Error 1 // 大致意思就是 pecl 文件夹存在,但是打不开 // 我的pecl是软连接过来的 不知道为什么打不开
2.4 解決策
/usr/local/Cellar/php@7.1/7.1.30/bin/php-config を変更します
extension_dir=‘/usr/local/Cellar/php@7.1/7.1.30/pecl/20160303‘ 中的 『pecl』 换成 『lib/php』 extension_dir=‘/usr/local/Cellar/php@7.1/7.1.30/lib/php/20160303‘
2.5 再コンパイル
./configure --enable-openssl --enable-http2 --enable-sockets --enable-mysqlnd -with-openssl-dir=/usr/local/Cellar/openssl/1.0.2s/ make clean && make && sudo make install
2.6 swoole.so を追加します
php.ini を変更し、ファイルの末尾に行を追加します
extension = "/usr/local/Cellar/php@7.1/7.1.30/lib/php/20160303/swoole.so"
Mac に swoole をインストールするのは本当に面倒です
以上がswoole macのコンパイルエラーが発生した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。