Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to install PCNTL extension in Windows?

I am running PHPUnit in Windows and trying to install PHPUnit via composer.json:

"phpunit/php-invoker": "*"

...with this dependency, but I am getting this error:

phpunit/php-invoker 1.1.3 requires ext-pcntl * -> the requested PHP extension pcntl is missing from your system.

How can I install this extenstion?

like image 350
Yogesh Avatar asked May 05 '15 05:05

Yogesh


2 Answers

You can't install ext-pcntl extension on Windows. Accordingly to the PHP documentation:

Currently, this module will not function on non-Unix platforms (Windows).

If you want to install PHPUnit all you need is the PHPUnit library:

composer require phpunit/phpunit 4.*

You don't need php-invoker to install PUPUnit. But if you also need the php-invoker library you are out of luck. Try using Vagrant or a plain VM with Linux distributions like Ubuntu, Debian or Mint.

like image 68
Aleksander Wons Avatar answered Sep 19 '22 14:09

Aleksander Wons


If you're running on windows 10 without homestead you can enable the linux subsystem and run your code through that.

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

Then install the requirements

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

This also can run laravel envoy and horizon too which don't work on windows.

It's a nice lightweight solution

like image 25
FloatingKiwi Avatar answered Sep 22 '22 14:09

FloatingKiwi