【问题标题】:Error building : fatal error: pcre.h: No such file or directory错误构建:致命错误:pcre.h:没有这样的文件或目录
【发布时间】:2014-04-28 15:09:29
【问题描述】:

我刚刚安装完 Ubuntu 13.10。

我想试试 Phalcon,当我构建源代码 (phalcon.so) 时,我遇到了这个错误:

     from /home/fabrice/Downloads/cphalcon/build/32bits/phalcon.c:204:
/usr/include/php5/ext/pcre/php_pcre.h:29:18: fatal error: pcre.h: No such file or directory
 #include "pcre.h"
                  ^
compilation terminated.
make: *** [phalcon.lo] Erreur 1

我安装的灯是:

sudo apt-get install -y apache2 php5 mysql-server libapache2-mod-php5 php5-mysql php5-curl php5-imagick php5-mcrypt php5-memcache php5-sqlite php5-xdebug php-apc php5-intl php-mongo php5-dev gcc

谁能帮帮我?

【问题讨论】:

  • php -v : PHP 警告:PHP 启动:无法加载动态库 '/usr/lib/php5/20121212/phalcon.so' - /usr/lib/php5/20121212/phalcon.so : undefined symbol: php_end_ob_buffer in Unknown on line 0 PHP 5.5.3-1ubuntu2.2 (cli) (built: Feb 28 2014 20:03:35) Copyright (c) 1997-2013 The PHP Group Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies with Zend OPcache v7.0.3-dev, 版权所有 (c) 1999-2013, by Zend Technologies with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans

标签: php ubuntu build phalcon ubuntu-13.10


【解决方案1】:

最新版本的 Phalcon 使用 PCRE 库。

你可以像这样安装它们:

sudo apt-get install libpcre3-dev

然后再次尝试安装 Phalcon

对于 CentOS,您需要使用

sudo yum install pcre-devel

致谢:@xgretsch

对于 Mac,您可以使用

brew install pcre

学分@Brandon Romano

对于没有brew的Mac

https://www.pcre.org/下载最新的pcre:,

tar -xzvf pcre-8.42.tar.gz
cd pcre-8.42
./configure --prefix=/usr/local/pcre-8.42
make
make install
ln -s /usr/local/pcre-8.42 /usr/sbin/pcre
ln -s /usr/local/pcre-8.42/include/pcre.h /usr/include/pcre.h

学分@user1377324

【讨论】:

  • 在mac上你可以使用:brew install pcre
  • 谢谢,在使用 PECL 安装 mongodb 的 PHP 扩展时,这似乎解决了我的问题。
【解决方案2】:

对于 mac osx maverick 你可以使用

brew install pcre

如果它给你错误,你可以使用

sudo ln -s /opt/local/include/pcre.h /usr/include/
sudo pecl install apc 

我在 Big Sur 通过 homebrew 安装了 pcre,所以链接为:

sudo ln -s /opt/homebrew/include/pcre2.h /usr/local/include/

【讨论】:

  • 另外,确保 /usr/local/include/ 文件夹存在。 (mac osx 大苏尔)
  • sudo ln -s /opt/homebrew/include/pcre.h /usr/local/include/ after brew install pcre 解决了使用 stack 构建 Haskell 项目的问题
【解决方案3】:

要包含 pcre.h 文件,请在包档案中搜索 pcre.h 文件。 为此,我使用了一个名为 apt-file (

apt-get 安装 apt-file

apt-文件更新

如果你没有安装它)。

然后搜索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文件编译问题。希望它会帮助其他人,他们可能会来寻找这个帖子的答案。

【讨论】:

    猜你喜欢
    • 2017-05-09
    • 2021-05-15
    • 2014-10-31
    • 2022-01-11
    • 2021-09-19
    • 2016-06-23
    相关资源
    最近更新 更多