我正在尝试以最简单的方式安装适用于 PHP 5.3 的 APC。我喜欢自制所以我就开始按照这个方法操作了。我可以用这个命令安装 PHP 5.3.6:
brew install https://github.com/adamv/homebrew-alt/raw/master/duplicates/php.rb --with-mysql
我认为这应该安装 PHP、Pear 和 PECL。似乎安装得很好。
现在,当我尝试安装APC时:
$ pecl install apc
downloading APC-3.1.9.tgz ...
Starting to download APC-3.1.9.tgz (155,540 bytes)
.................................done: 155,540 bytes
Warning: require_once(Archive/Tar.php): failed to open stream: No such file or directory in PackageFile.php on line 305
Warning: require_once(Archive/Tar.php): failed to open stream: No such file or directory in /usr/local/Cellar/php/5.3.6/lib/php/PEAR/PackageFile.php on line 305
Fatal error: require_once(): Failed opening required 'Archive/Tar.php' (include_path='/usr/local/Cellar/php/5.3.6/lib/php') in /usr/local/Cellar/php/5.3.6/lib/php/PEAR/PackageFile.php on line 305
我怎样才能解决这个问题?
答案1
现在homebrew-php
已迁移至homebrew-core
默认情况下,PECL 应该与 PHP 一起安装。
以下是建议的步骤:
- 通过以下方式重新安装 PHP
brew install php
:。 - 检查
pecl
命令方式:which -a pecl
。
要查看已安装的文件,请参阅:brew list php
。
要安装 PHP 扩展,您需要使用 PECL 作为推荐的方式。
随着迁移到 Homebrew-core,php 公式已不再接管 PECL 的角色。安装 xdebug 可以(并且应该)通过 PECL 完成。来源:GH-26007
例如:pecl install apc
或pecl install xdebug
。
如果您在安装扩展时遇到问题,请向其维护者报告。检查PECL 网站更多细节。
答案2
pecl
并pear
附带 Homebrew 版本的 PHP:
brew install php
pecl install apcu
如果您对此感到厌倦pecl
并且pear
由 php 提供,请尝试以下操作:
ls -al $(which pecl)
ls -al $(which pear)
两个位置都应符号链接到Cellar/php/...
注意,macOS 提供的 php 版本通常低于 Homebrew 版本。为确保您运行的是 Homebrew 版本,请php
在命令前加上$(brew --prefix php)/bin
。
作曲家的示例:
$(brew --prefix php)/bin/php composer.phar install
这很重要,因为常见的扩展——例如ext-intl
和ext-gettext
是自动提供的,并且会自动修复这些问题。
注意,对于php-fpm
,使用brew reinstall php --with-fpm
。php-fpm
路径将是... $(brew --prefix php)/sbin/php-fpm
。
答案3
下面的命令应该有帮助
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
答案4
您不需要安装apc
。
只需添加
apc.enabled=on
apc.shm_size=64M
apc.enable_cli=on
php.ini
并确保你的 apcu 正常。