使用 pecl 安装 php 扩展时如何传递配置选项?

使用 pecl 安装 php 扩展时如何传递配置选项?

有一个 PHP 扩展,当我使用命令安装它时,需要向其传递一个配置选项pecl。我找不到这样做的方法。

当然我可以手动安装它,但我需要能够使用单个命令来安装它 - 以便可以通过 puppet 轻松安装它。

有任何想法吗?

答案1

要接受默认设置,您可以使用以下命令:

printf "\n" | pecl install memcache

成立这里

答案2

基于http://old.nabble.com/unattended-PECL-installs--td29760522.html你可以尝试:

yes no | pecl install memcache 

对所有问题都回答“否”,或者:

printf "yes\n" | pecl install memcache 

回答一次“是”。

但这两个答案都不太令人满意。

答案3

有一个突出的错误(撰写本文时已有 3 年历史)要求本地 PECL 提供程序和适用于 Pear 包的类似较旧的版本。看起来它们都不会很快被纳入 Puppet 中。

这里有 PECL 和 Pear 提供商您可以将其包含在您的 Puppet 设置中。 这里还有另一个 PECL 提供程序。我自己没有测试过它们,也不能保证它们使用起来有多容易或者效果有多好。

我见过的最好的建议涉及重新打包您想要使用的每个 PECL 扩展作为.deb.rpm包,并运行您自己的内部存储库或通过 puppet 推送包文件并通过dpkg或安装它们rpm这里有一份基于 Debian 的发行版的 HOWTO

对于您的情况,您需要将 PECL 扩展安装到开发箱上的暂存目录中,手动提供所需的命令行选项,然后将创建的内容打包到适合您的操作系统包管理系统的包中。

优点是拥有一个单一的包管理系统,而不是所有的 apt、pecl、pear、gem 等。缺点是,由于您将自己重新打包这些扩展,因此您仍然必须监视上游提供商(在您的情况下是 pecl)并在安全补丁发布时更新您的软件包。

相关内容