Bug #78900 [NEW]: Won't install anymore to /user/includes/php, needs to install to /usr/local/php
| From: | bugs dot php dot net at mammals dot se | Date: | Tue, 03 Dec 2019 10:09:40 +0000 |
| Subject: | Bug #78900 [NEW]: Won't install anymore to /user/includes/php, needs to install to /usr/local/php | ||
| Groups: | php.bugs | ||
| Request: | Send a blank email to php-bugs+get-224020@lists.php.net to get a copy of this message | ||
From: bugs dot php dot net at mammals dot se
Operating system: Mac OS 10.13.6
PHP version: Irrelevant
Package: *Directory/Filesystem functions
Bug Type: Bug
Bug description:Won't install anymore to /user/includes/php, needs to install to /usr/local/php
Description:
------------
Apple has decided to protect a lot of directories in Mac OS, starting
with version 10.13.X so even superusers (sudo command) and/or root can't
touch a lot of directories. This means everything must be installed in
those directories that a regular user or a sudo user has access to. I.e
/user/local, not /usr/inclides/php/ext/
Se here: About System Integrity Protection on your Mac
OS X El Capitan and later includes security technology that helps
protect your Mac from malicious software.
https://support.apple.com/en-gb/HT204899
The build process for imagick starts like this:
sudo pecl install imagick
WARNING: channel "pecl.php.net" has updated its protocols, use "pecl
channel-update pecl.php.net" to update
downloading imagick-3.4.4.tgz ...
And ends like this:
Build process completed successfully
Installing '/usr/include/php/ext/imagick/php_imagick_shared.h'
ERROR: failed to mkdir /usr/include/php/ext/imagick
Because /usr/includes is not somehting an installer/root/sudo has access
to write to anymore. There is no way to for instance chown on thoose
folder, create a folder elsewhere and copy it to that folder etc.
Because of the protection.
One could turn SIPS off,
https://www.howtogeek.com/230424/how-to-disable-system-integrity-protection-on-a-mac-and-why-you-shouldnt/
but a way better solution is to get the installer of Imagick to install
in the correct place, /usr/local where PHP already resides?
--
Edit bug report at https://bugs.php.net/bug.php?id=78900&edit=1
--
Fix committed: https://bugs.php.net/fix.php?id=78900&r=fixed
Fixed in release: https://bugs.php.net/fix.php?id=78900&r=alreadyfixed
Need backtrace: https://bugs.php.net/fix.php?id=78900&r=needtrace
Need Reproduce Script: https://bugs.php.net/fix.php?id=78900&r=needscript
Try newer version: https://bugs.php.net/fix.php?id=78900&r=oldversion
Not developer issue: https://bugs.php.net/fix.php?id=78900&r=support
Expected behavior: https://bugs.php.net/fix.php?id=78900&r=notwrong
Not enough info: https://bugs.php.net/fix.php?id=78900&r=notenoughinfo
Submitted twice: https://bugs.php.net/fix.php?id=78900&r=submittedtwice
register_globals: https://bugs.php.net/fix.php?id=78900&r=globals
PHP version support discontinued: https://bugs.php.net/fix.php?id=78900&r=phptooold
Daylight Savings: https://bugs.php.net/fix.php?id=78900&r=dst
IIS Stability: https://bugs.php.net/fix.php?id=78900&r=isapi
Install GNU Sed: https://bugs.php.net/fix.php?id=78900&r=gnused
Floating point limitations: https://bugs.php.net/fix.php?id=78900&r=float
No Zend Extensions: https://bugs.php.net/fix.php?id=78900&r=nozend
MySQL Configuration Error: https://bugs.php.net/fix.php?id=78900&r=mysqlcfg