I’m trying to install Magento (2.3.0) on macOS Mojave. Magento shows PHP Extension intl.
is missing.
I tried the below to resolve:
- Made a copy of php.ini using
cp /etc/php.ini.default php.ini
- Removed “;” before
extension=php_intl.dll
- Restart Apache
sudo apachectl restart
But the above did not resolve.
On checking php -v
, i’m seeing the below error:
PHP Warning: PHP Startup: Unable to load dynamic library
'/usr/lib/php/extensions/no-debug-non-zts-20160303/php_intl.dll' -
dlopen(/usr/lib/php/extensions/no-debug-non-zts-20160303/php_intl.dll,
0x0009): dlopen(): file not found: /usr/lib/php/extensions/no-debug-
non-zts-20160303/php_intl.dll in Unknown on line 0
PHP 7.1.19 (cli) (built: Aug 17 2018 20:10:18) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.1.0, Copyright (c) 1998-2018 Zend Technologies
There are only 2 files under /usr/lib/php/extensions/no-debug-non-zts-20160303
namely opache.so
and xdebug.so
How can i install or enable “PHP Extension intl” on my macOS Mojave?
3
Answers
Here's a solution that worked for me:
brew list | grep php
brew remove --ignore-dependencies --force php70 php71 php72
(based on what you see above)brew install php72
(i chose 7.2, 7.3 is not supported yet by several vendors)which php
should show you the path to the installed PHP. Copy the path.vi ~/.bash_profile
and add this line to the file:export PATH=/usr/local/php5/bin:$PATH
source ~/.bash_profile
php -m | grep intl
. If the installation went well, we will see intl listed. If not the extension is not installed.I think from PHP 7 (not sure of the version), the extensions are available by default and we need not enable them in php.ini file explicitly.
Got help from the link and able to compile https://donatstudios.com/Install-PHP-Mcrypt-Extension-in-OS-X
Next we will download the PHP source. Verify the exact version of PHP you are running. This can be retrieved as follows. The version is highlighted.
If you installed Homebrew’s php, linking it to a directory in your path will fix the issue.
brew link --force [email protected]
I had the same issue and that fixed it.
Here is a link where I got a detailed answer from