Phpを再コンパイルせずに pcntl モジュールをインストールすることは可能ですか?私はこれをCentOSでセットアップしようとしています。
yumコマンドでモジュールを見つけようとしますyum search pcntl
パッケージマネージャーを介してそれを純粋に動作させることはできません。追加のリポジトリをセットアップした後でも、yum search pcntl
は一致を検出しません。
PHP完全に再インストールせずに機能する1つの方法を見つけましたが、最終的にtinyビットが必要になりますre-compilation。見つかった投稿 here は、pcntl拡張のみをコンパイルして有効にする(投稿を少し編集して再フォーマットする)少し簡単な方法に言及しています。
Get your current php version (check phpinfo())
Get the sources for that version here: http://www.php.net/releases/
Extract this file; you will got folder name like php5-x.x.x
Run following lines in terminal:
cd php5-x.x.x/ext/pcntl
phpize
./configure
make
cp modules/pcntl.so /usr/lib/php/modules/
echo "extension=pcntl.so" > /etc/php.d/pcntl.ini
restart Apache
Note: if your /usr/lib/php/modules/ or /etc/php.d/ is not same
as this, you could try 'locate php/modules' or 'locate php.d'
Pcntlモジュールはphp-cli
パッケージ。yumで次のコマンドを使用してインストールできます。
Sudo yum install php php-cli
この拡張機能が有効になっているかどうかを確認してください。
php -m
または
php-fpm -m
存在しない場合は、ビルド時に有効にするか、拡張機能としてビルドする必要があります。
既存のPHPバージョンレポジトリを http://www.php.net/releases/ からダウンロードします(これは、どこにダウンロードして展開する必要があるかは関係ありません。ローカルマシンにダウンロードするか、ext/pcntlをサーバーのどこかにコピーするだけです)
ダウンロードしたフォルダを抽出します(例:/home/downloads/PHP_5.x.x/)
cd /home/downloads/PHP_5.x.x/ext/pcntl
phpize
./configure
make
cp modules/pcntl.so /usr/local/lib/php/extensions/
[*このパスは、PHPインストール/構成によって異なります。PHP php.iniの拡張パスまたはecho phpinfo();で確認できます)]
echo "extension=pcntl.so" > /usr/local/lib/php.ini
または、php.iniに「extension = pcntl.so」という行を追加します
vim /usr/lib/php.ini
[*再度、PHPインストールに依存します。php.iniパスは、locate php.iniまたはecho phpinfo();で見つけることができます]]