在基于 Debian 的 Linux 发行版(Ubuntu、Mint、Kali 等)上安装 PECL
使用 aptitude 命令
sudo apt-get install php-pear
希望对某些人有所帮助
PECL 使创建共享 PHP 扩展变得容易。使用 » pecl 命令,执行以下操作
$ pecl install extname
这将下载 *extname* 的源代码,编译并安装 extname.so 到 extension_dir。然后可以通过 php.ini 加载 extname.so。
默认情况下,pecl 命令不会安装标记为 alpha
或 beta
状态的软件包。如果不存在 stable
软件包,则可以使用以下命令安装 beta
软件包
$ pecl install extname-beta
也可以使用此变体安装特定版本
$ pecl install extname-0.1
注意:
在 php.ini 中启用扩展后,需要重新启动 Web 服务才能使更改生效。
在基于 Debian 的 Linux 发行版(Ubuntu、Mint、Kali 等)上安装 PECL
使用 aptitude 命令
sudo apt-get install php-pear
希望对某些人有所帮助
传递给 configure 的选项(使用 -D 或 --configureoptions=)需要在 Dockerfile RUN 命令中以这种方式指定
RUN pecl install -D 'with-example-dir="/dir" enable-example-thing="yes"' package
或
RUN pecl install --configureoptions='with-example-dir="/dir" enable-example-thing="yes"' package
否则,docker build 可能会以 pecl 无法正确解析的方式引用该命令,并且构建将失败并出现类似以下错误
PHP Fatal error: Uncaught TypeError: array_key_exists(): Argument #2 ($array) must be of type array, null given in /usr/local/lib/php/PEAR/Builder.php:397
要在 Amazon Linux AMI 上编译 pecl 扩展,请按照 http://docs.aws.amazon.com/AWSEC2/latest/UserGuide/install-LAMP.html 中的教程操作,然后使用以下命令安装这些其他必需的软件包
[ec2-user ~]$ sudo yum install php-devel zlib-devel curl-devel gcc
然后您应该能够编译 pecl 扩展;例如,输入以下命令以编译 pecl_http 扩展
[ec2-user ~]$ sudo pecl install pecl_http
要在 Fedora 中使用 pecl、pear 或 phpize 命令,请安装 php-devel 软件包
$ yum install php-devel