2014-01-16 14:50

使用CPPFLAGS指定目录时,。/ configure无法找到头文件

I'm trying to build php gettext module on Mac OS X Mavericks.

Installed gettext with brew install gettext, and checked header files are available at /usr/local/opt/gettext.

$ ls /usr/local/opt/gettext/include/
autosprintf.h   gettext-po.h    libintl.h

With a help in the post of How to override environment variables when running configure?, I executed ./configure LDFLAGS='-L/usr/local/opt/gettext/lib/' CPPFLAGS='-I/usr/local/opt/gettext/include/' to get this error message.

checking if debug is enabled... no
checking if zts is enabled... no
checking for re2c... re2c
checking for re2c version... 0.13.6 (ok)
checking for gawk... gawk
checking for GNU gettext support... yes, shared
configure: error: Cannot locate header file libintl.h <--

What's wrong with this? Why configure cannot find the header file when I specified the directory?

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答


  • drba1172 drba1172 7年前

    Looking into the ./configure script, I noticed the script doesn't look into the environmental variable that I give. I just modified the script (Line 4067) to get it work.

    if test "$PHP_GETTEXT" != "no"; then
      for i in $PHP_GETTEXT /usr/local /usr /usr/local/opt/gettext; do
        test -r $i/include/libintl.h && GETTEXT_DIR=$i && break
    点赞 评论 复制链接分享
  • dongtuan8547 dongtuan8547 7年前

    When compiling php you can pass --with-gettext=/usr/local/opt/gettext as an option to the configure commmand - thats what sets the $PHP_GETTEXT variable.

    点赞 评论 复制链接分享