Моя операционная система: Mac OSX 10.11
Я пытаюсь установить Phabricator на моем Mac, когда я выполняю команду
phabricator cpopt$ ./bin/phd start
Я получил ошибку:
"ERROR: The PHP extension 'pcntl' is not installed. You must install it to run daemons on this machine."
Я искал эту проблему в Google, и у меня есть много решений, но они все не работают для меня, я почти в отчаянии.
Как я могу этого достичь?
У вас установлен brew (читайте здесь, чтобы установить http://brew.sh/)?
Пытаться:
brew install php
или если вам нужно установить PHP 5.6 с brew, вы можете сделать это:
brew install [email protected]
Затем, чтобы включить его в свой путь PATH (если он не добавлен автоматически), может потребоваться выполнить команды в интерфейсе командной строки, которые могут потребоваться для обновления вашего пути, например, (это тот случай, если вы brew install [email protected]
но был не тот случай, когда я только что проверил с brew install php
— если вы используете bash вместо zsh, измените .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.ini, что php-cli работает:
php -i | grep php.ini
Я должен был сделать это, чтобы установить инструмент командной строки platform.sh. Это был главный хит в Google, поэтому я добавляю эту информацию. Процесс, которым я следовал, был таким, как показано ниже.
В терминале:
Добавьте себя в группу пользователей «wheel».
sudo dscl . append /Groups/wheel GroupMembership <username>
Предоставить группе доступ для записи в / usr / local / bin
sudo chmod -R g+w /usr/local/bin
Ссылка libpng для варки
brew link libpng
Установите pcntl для php (5.6 в моем случае)
brew install homebrew/php/php56-pcntl