web-dev-qa-db-ja.com

MacOSXにPHP拡張子 'pcntl'をインストールする方法

私のオペレーティングシステムは次のとおりです:Mac OSX 10.11

次のコマンドを実行すると、MacにPhabricatorをインストールしようとしています。

phabricator cpopt$ ./bin/phd start

エラーが発生しました:

"ERROR: The PHP extension 'pcntl' is not installed. You must install it to run daemons on this machine."

私はグーグルでこの問題を検索しました、そして私はたくさんの解決策を得ました、しかしそれらはすべて私にはうまくいきません、私はほとんど絶望しています。

どうすればそれを達成できますか?

enter image description here

6
Maker

Brewをインストールしましたか(インストールするにはここを読んでください http://brew.sh/ )?

試してください:

brew install php

または、brewでPHP 5.6をインストールする必要がある場合は、次のようにすることができます。

brew install [email protected]

次に、それをPATHに含めるために(自動的に追加されない場合)、CLIでコマンドを実行する必要がある場合があります。たとえば、パスを更新する必要があります。 (これは、brew install [email protected]を使用した場合に当てはまりますが、brew install phpでテストした場合は当てはまりません。zshの代わりにbashを使用している場合は、.zshrcを.bashrcに変更してください。

echo 'export PATH="/usr/local/opt/[email protected]/bin:$PATH"' >> ~/.zshrc
echo 'export PATH="/usr/local/opt/[email protected]/sbin:$PATH"' >> ~/.zshrc

それがうまくいかない場合は、phabricatorが正しいバージョンのphpを呼び出しているのではないかと思います。

好奇心から、これから得られる出力は何ですか?それは、phabricatorがphpバージョンを決定するために使用しているものです。

/usr/bin/env php -v

また...あなたのphp.iniはpcntl拡張子を持つように更新されていますか?これを実行してモジュールを確認し、pcntlを探します。

php -i | grep pcntl

Php-cliが実行されているphp.iniを再確認します。

php -i | grep php.ini
11
Clay

Platform.shコマンドラインツールをインストールするには、これを行う必要がありました。これはグーグルでトップヒットだったので、この情報を追加します。私が従ったプロセスは以下の通りでした。

ターミナル内:

'wheel'ユーザーグループに自分を追加します。

Sudo dscl . append /Groups/wheel GroupMembership <username>

グループに/ usr/local/binへの書き込みアクセスを許可する

Sudo chmod -R g+w /usr/local/bin

醸造のためのリンクlibpng

brew link libpng

Php用のpcntlをインストールします(私の場合は5.6)

brew install homebrew/php/php56-pcntl
1
cmtickle