As others have already said, Magento 2 will work on Mac, Linux and Windows. The issue you are experiencing is caused by the default xdebug max nesting level value of 100.
The error you are seeing will only exist if:
- Xdebug is installed
xdebug.max_nesting_level
hasn't been increased from the default value
I suggest that you find the php.ini file being used by your server and modify the xdebug.max_nesting_level
there.
There are a couple of ways that you could figure out which php.ini file is use, assuming that more than one such file exists on your system.
- You can open up the root level
index.php
file and add phpinfo(); die();
towards the top of the file.
Load any page of your Magento instance and look for the row that says "Loaded Configuration File", which will tell you the exact path to the file that needs to be modified.
- You could run
php --ini
from the command line and hope that the loaded configuration file is the same as the one used by your web server.
Open up the php.ini file with your favorite editor, note that you might need to use sudo to edit the file.
sudo vim /path/to/your/php.ini
Look for a line that starts with xdebug.max_nesting_level
, it might already exist and be explicitly set to the default value. If you find it, update it to a value like 200.
If you don't find such a line, you'll need to add it yourself:
xdebug.max_nesting_level = 200
Save your changes to the file and restart your webserver. That should fix the error message.