php-在OS X 10.11 El Capitan,macOS 10.12 Sierra,macOS 10.13 High Sierra(<10.13.3)上安装pecl和pear
因此,看起来/ usr(以及其他目录)的新“系统完整性保护”锁定使pear和pecl成为了无法启动的启动器。 有没有人找到禁用它的解决方法?
axlotl asked 2020-02-14T05:51:55Z
10个解决方案
66 votes
有一种更简单的方法-无需禁用SIP或下载自己的副本:
sudo php /usr/lib/php/install-pear-nozlib.phar -d /usr/local/lib/php -b /usr/local/bin
Paul Schreiber answered 2020-02-14T05:57:55Z
57 votes
您不应该将二进制文件安装到系统reinstall中,而应使用pear。
通过Homebrew安装时,PHP应随附reinstall和pear命令。
这是使用最新的Homebrew安装PHP的示例:
brew install php
或特定版本:
brew install php@7.1
brew install php@5.6
要查找reinstall和pear命令,请运行:
find -L "$(brew --prefix php)" -name pecl -o -name pear
要么:
find -L "$(brew --prefix php@7.1)" -name pecl -o -name pear
如果没有,请考虑卸载以前的PHP版本或运行reinstall。
您也可以尝试通过以下方式重新链接它:
brew unlink php@7.1 && brew link php@7.1 --dry-run && brew link --overwrite --force php@7.1
否则,请手动链接:
ln -vs "$(find -L "$(brew --prefix php@7.1)/bin" -name pecl)" /usr/local/bin
ln -vs "$(find -L "$(brew --prefix php@7.1)/bin" -name pear)" /usr/local/bin
或者直接将其作为Phar软件包下载Pear:
curl -o /usr/local/bin/pear http://pear.php.net/go-pear.phar
chmod +x /usr/local/bin/pear
或使用以下一种代码(在Linux上有效,但在Unix上无效):
curl -sL http://pear.php.net/go-pear.phar | sudo install -v -m755 /dev/stdin /usr/local/bin/pear
kenorb answered 2020-02-14T05:58:59Z
36 votes
通过此链接:[http://jason.pureconcepts.net/2012/10/install-pear-pecl-mac-os-x/]通过此说明,您无需禁用“系统完整性保护”
以下说明在Mac OS X上的以下环境中安装PEAR和PECL: / usr / local /。 PECL与PEAR捆绑在一起。 所以这很简单 在Mac OS X上安装PEAR。
PEAR是PHP的软件包存储库,可以轻松下载和 安装诸如PHPUnit和XDebug之类的PHP工具。 我特别推荐 每个PHP开发人员都有这两个。
下载梨
pear version
配置并安装PEAR
现在,您将在提示符下配置PEAR。
键入1,然后按回车键。
输入:
pear version
输入4,然后按回车键。
输入:
pear version
按回车
验证梨。
您应该可以输入:
pear version
最终,如果您使用PEAR的任何扩展程序或应用程序, 可能需要更新PHP的包含路径。
Sergii Smirnov answered 2020-02-14T06:00:35Z
5 votes
在Mohave上,我必须运行以下命令-感谢转到[https://tobschall.de/2018/08/07/pear-on-mojave/]
cd /tmp
curl -s -O https://pear.php.net/install-pear-nozlib.phar
sudo php install-pear-nozlib.phar -d /usr/local/lib/php -b /usr/local/bin
Daniel Flippance answered 2020-02-14T06:00:56Z
2 votes
添加后缀--with-pear以安装pear和pecl
见下面的例子
brew install php --with-pear
brew reinstall php --with-pear
user3890355 answered 2020-02-14T06:01:21Z
0 votes
从MacOS Sierra 10.12.1开始,这对我有效,用于升级PHP,安装PEAR和V8
brew tap homebrew/dupes
brew tap homebrew/versions
brew tap homebrew/homebrew-php
phpversion="$(php -v | tail -r | tail -n 1 | cut -d " " -f 2 | cut -c 1,3)"
brew unlink php$phpversion
brew install php71
brew install autoconf
curl -O http://pear.php.net/go-pear.phar
php -d detect_unicode=0 go-pear.phar
echo -e "\nexport PATH=$HOME/pear/bin:$PATH \n"
source ~/.bash_profile
echo -e "\ninclude_path = '.:/Users/YOURUSERNAME/pear/share/pear/' \nextension=v8js.so \n" >> /usr/local/etc/php/7.1/php.ini
git clone https://github.com/phpv8/v8js ~/tmp/v8js && cd $_
./configure CXXFLAGS="-Wno-c++11-narrowing"
make
make test
make install
sudo apachectl restart
davidcondrey answered 2020-02-14T06:01:43Z
0 votes
高Sierra设置:
安装Brew
用Brew安装PHP
预先安装了PEAR PACKAGE
/usr/local/opt/php@/bin
从那里你可以跑
pecl install xdebug
并且您应该使用Xdebug使用PHP二进制文件。
xrep answered 2020-02-14T06:02:25Z
0 votes
当使用brew且未链接时,请使用:
brew install php@5.6
brew unlink php@5.6
$(brew --prefix php@5.6)/bin/pecl
$(brew --prefix php@5.6)/bin/pear
Mike answered 2020-02-14T06:02:46Z
-1 votes
这是Macworld文章的链接,该文章描述了如何启用和禁用“系统完整性保护”。
[http://www.macworld.com/article/2986118/security/how-to-modify-system-integrity-protection-in-el-capitan.html]
RichardD answered 2020-02-14T06:05:54Z
-1 votes
对于macOS Mojave 10.14.4,在询问“安装基础($ prefix)”位置时,只需使用/ local而不是/ usr。
Yasir answered 2020-02-14T06:06:14Z