Home Articles

可以't get to install ' intl'扩展为debian上的php

Asked
Viewed 108 times
22

我有一个debian服务器,我想通过pecl安装“intl”扩展 .

在安装过程中,它询问我:“指定可以找到ICU库和 Headers 的位置[DEFAULT]:”这里我一直在尝试几个选项,包括将其留空以使用DEFAULT,但是我收到以下错误:

configure:错误:C预处理器"/lib/cpp"无法进行健全性检查请参阅 config.log' for more details. ERROR: / tmp / pear / temp / intl / configure --with-icu-dir = DEFAULT'失败

我已经安装了php5.3:make && make install . 我已经安装了“icu”,但与php5.3不同,它是用apt-get安装的(我不知道这是否重要) .

任何的想法?

5 Answers

  • 39

    我知道这听起来很熟悉;我在2008年5月遇到了同样的问题,在这里讨论:http://old.nabble.com/ubuntu-7.10-pecl-install-intl-p17140873.html

    Ed Batutis解释说,如果你在“/ usr / bin / icu-config”上有icu-config,那么“/ usr”是正确答案 . 如果它在其他地方,则相应地调整 .

    然而这对我没有帮助 . 我在这里为我描述了解决方案:http://darrendev.blogspot.com/2008/05/install-php-pecl-intl-module-for-ubuntu.html ...这基本上是为了定义PHP_SETUP_ICU宏 . 这应该是在5.2.4中添加的,所以当你使用php 5.3时,你的问题应该是别的 .

  • 20

    在Ubuntu 12.04 LTS上,以下内容对我有用:

    sudo apt-get install php5-intl
    sudo /etc/init.d/apache2 restart
    

    Bam,警告消失了!希望这有助于未来的人:)

  • 12

    sudo ./pecl install intl 之前安装g sudo apt-get install g++ 为我做了诀窍 .

  • 2

    您需要安装libicu44和libicu-dev:

    apt-get install libicu44 libicu-dev
    

    在此之后你可以用pecl安装intl:

    ./pecl install intl
    

    请注意,如果使用Ubuntu:

    它看起来像第一个包 libicu44 不可用,在这种情况下只需安装 libicu-dev 它将通过依赖项并为您处理它 . 似乎目前使用 libicu42 .

  • 1

    同样的错误:

    /tmp/pear/temp/intl/collator/collator_class.c:92: error: duplicate 'static'
    

    但在阅读国际原生扩展评论时,我看到:

    Debian Squeeze用户可以使用以下命令安装intl扩展:sudo apt-get install php5-intl

    first comment

    这个包甚至可以用我的旧版Ubuntu 8.04 ...

Related