it-roy-ru.com

Как я могу решить "laravel / horizon v1.1.0 требует ext-pcntl * -> запрашиваемое расширение PHP отсутствует в вашей системе"?

Когда я запускаю composer install в командной строке, возникает такая ошибка:

  Problem 1
    - Installation request for laravel/horizon v1.1.0 -> satisfiable by laravel/horizon[v1.1.0].
    - laravel/horizon v1.1.0 requires ext-pcntl * -> the requested PHP extension pcntl is missing from your system.

  To enable extensions, verify that they are enabled in your .ini files:
    - C:\xampp-7.1\php\php.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Как я могу решить эту ошибку?

9
Success Man

Запустите composer с параметром --ignore-platform-reqs и укажите pcntl и posix

composer install --ignore-platform-reqs ext-pcntl ext-posix
19
user320487

Согласно принятому ответу, но вы можете добавить его в свой composer.json, чтобы вам не приходилось постоянно запускать --ignore-platform-reqs

"config": {
  "platform": {
    "ext-pcntl": "7.2",
    "ext-posix": "7.2"
  }
}
12
dailysleaze

Расширение pcntlне поддерживается в Windows. (на основе вашей информации XAMPP)

Пожалуйста, смотрите эти проблемы с github на laravel/horizon page # 131 , # 78 .

Я предлагаю вам использовать Laravel Homestead в вашей системе Windows, он прост в настройке и избавит вас от многих подобных проблем в будущем.

5
Sapnesh Naik

Я установил PHP 7.2 вместо 7.1, и теперь все работает нормально. Похоже, что pcntl не присутствовал в 7.1, но он установлен с php 7.2.

2
Roland Allla

установить горизонт следующим образом: 

composer require laravel/horizon --ignore-platform-reqs

затем беги 

php artisan horizon:install
0
Saurabh Mistry

Если вы работаете в Windows 10 без Homestead, вы можете включить подсистему Linux и запустить горизонт через это.

https://www.windowscentral.com/how-install-bash-Shell-command-line-windows-10

Затем установите требования

Sudo apt install php7.2-fpm php7.2-mbstring php7.2-xmlrpc php7.2-soap php7.2-Gd php7.2-xml php7.2-cli php7.2-Zip php7.2-mysql

Это также может запустить посланника Laravel, который не работает на окнах.

Это хорошее легкое решение 

0
FloatingKiwi