Mac OS X Lion上的PHP:gettext模块在哪里?

时间:2011-09-16 16:01:02

标签: php macos gettext osx-lion

我有一台全新的Mac,预装了Lion。 我启用了Apache,PHP模块。

phpinfo()有效,但不支持gettext。

在php.ini中编写extension=php_gettext.so没有帮助。 所以我尝试在文件系统中locate,但似乎没有可用的PHP扩展。

OS X Lion中的PHP扩展名在哪里?

4 个答案:

答案 0 :(得分:7)

编辑:只要您使用最新版本更新 MAMP,只需经过测试,仍适用于Mavericks 。这是完整的教程:

我设法使用来自MAMPgettext.so与Mac OS X Apache / PHP本机服务器一起工作。以下是如何做到这一点:

  1. 下载并安装MAMP(不需要)
  2. 将为PHP 5.5.10构建的MAMP gettext.so复制到Mavericks的本地php扩展文件夹:

    sudo cp /Applications/MAMP/bin/php/php5.5.10/lib/php/extensions/no-debug-non-zts-20100525/gettext.so /usr/lib/php/extensions/no-debug-non-zts-20100525/

  3. 通过添加以下新行来更新Mavericks的/etc/php.ini文件:

    extension=/usr/lib/php/extensions/no-debug-non-zts-20100525/gettext.so

  4. 重启apache:

    sudo apachectl restart

  5. 之后,您可以使用_()gettext()个功能。

    感谢@MountainAsh注意到我们无法在此过程之后删除MAMP,因为gettext使用了一个MAMP库。

答案 1 :(得分:1)

到目前为止,OS X不包含gettext(自从我第一次尝试使用10.4)。你必须自己建造它。我按照下面的流程工作,并在10.6下工作(取自Apple论坛讨论主题)。它现在仍然在10.7中运行。请注意,这是安装gettext模块,而不是php_gettext。虽然它们在某种程度上起作用,但初始化应该是不同的。请记住,交换正确的PHP版本的链接。我认为10.7附带PHP 5.3.6。你需要搜索它。

以root用户身份(或之前发出sudo -s):


mkdir -p / SourceCache

cd / SourceCache

curl -O http://ftp.gnu.org/pub/gnu/gettext/gettext-0.17.tar.gz

tar xzf gettext-0.17.tar.gz

cd gettext-0.17

MACOSXDEPLOYMENTTARGET = 10.6 CFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp”CCFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe”CXXFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe“LDFLAGS =” - arch i386 -arch x86_64 -bindatload“./ configure

make install


cd / SourceCache

curl -O http://www.opensource.apple.com/source/apachemod_php/apache_modphp-53/php-5.3.0.tar.bz2

tar xjf php-5.3.0.tar.bz2

cd /SourceCache/php-5.3.0/ext/gettext

phpize

MACOSXDEPLOYMENTTARGET = 10.6 CFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe -no-cpp-precomp”CCFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe”CXXFLAGS =“ - arch i386 -arch x86_64 -g -Os -pipe“LDFLAGS =” - arch i386 -arch x86_64 -bindatload“./ configure

制作

make install


完成后,编辑/创建/etc/php.ini并添加: 延长= / usr / lib中/ PHP /扩展/无调试非ZTS-20090626 / gettext.so

下一期: sudo apachectl graceful

祝你好运!

答案 2 :(得分:0)

/usr/lib/php/extensions/

你会在这里找到他们......

gettext似乎没有包含在Lion的PHP版本中。

答案 3 :(得分:0)

对我来说,从http://php-osx.liip.ch重新安装当前的PHP版本(OS X 10.10.5 Yosemite上的5.5.29)是最简单的解决方案 - 不再需要构建我自己的gettext.so扩展。< / p>