sudo pecl安装apc返回错误

51

我运行了以下命令:sudo pecl install apc

文件下载完成并且配置成功后,执行make时出现如下错误:

/usr/include/php5/ext/pcre/php_pcre.h:29: fatal error: pcre.h: No such file or directory

是否有办法解决这个问题?

6个回答

100

安装APC时需要先安装PCRE。您可以使用以下命令快速安装PCRE:

yum install pcre-develapt-get install libpcre3-dev

安装完成后,重新运行以下命令:

sudo pecl install apc


2
PCRE是必需的,但文档仍然说:“构建此扩展不需要外部库”。 - Robert Ros
1
使用sudo apt-get install build-essential命令可能有助于解决外部库的问题。 - Citricguy

12

sudo apt-get install libpcre3-dev 就是答案。

所以要安装 pecl [安装扩展],需要安装以下软件包:

sudo apt-get install php5-pear php5-dev libpcre3-dev

3

PHP的版本是多少?

几个月前,我曾经遇到安装APC的困难,只能通过 pecl install apc-beta 来使其正常运行。

如果您不是在处理生产系统,可以尝试这个方法。


1
你以前通过PECL安装过PHP扩展吗?
文件/usr/include/php5/ext/pcre/php_pcre.h是否真的存在?
你可能会因为以下原因而遇到此错误:
  1. 权限设置不正确
  2. PECL目录配置不正确。

1

看起来你缺少 PHP5 的开发版本。在 Ubuntu 上,你可以使用以下命令进行安装:

sudo aptitude install php5-dev

安装了php5-dev后,我在Ubuntu 12.04上遇到了这个错误。 - Ryre

0

我已经在这里发布了同样的答案。但是为了参考,我仍然在此发布

要包含pcre.h文件,请搜索pcre.h文件的软件包存档。 为此,我使用一个名为apt-file的命令(

apt-get install apt-file

如果您没有安装它,则需要执行以下操作)。 然后搜索pcre软件包:

apt-file search -x "/pcre.h$"

-x指示命令我要使用正则表达式作为模式。 apt-file提供了三个匹配项:

  • kannel-dev:/usr/include/kannel/gwlib/pcre.h
  • libajax6-dev:/usr/include/ajax/pcre.h
  • libpcre3-dev:/usr/include/pcre.h

最后一个是我想要的:

apt-get install libpcre3-dev

这将解决pcre.h文件编译问题。希望能帮助其他可能在寻找此线程答案的人。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接