我正在运行OS X Lion,我的一些代码使用了gettext别名,_()但我得到了这个错误
Fatal error: Call to undefined function _()
Run Code Online (Sandbox Code Playgroud)
这是我的环境
PHP 5.3.6 with Suhosin-Patch (cli) (built: Jun 25 2011 10:41:21)
Copyright (c) 1997-2011 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2011 Zend Technologies
with Xdebug v2.1.1, Copyright (c) 2002-2011, by Derick Rethans
Run Code Online (Sandbox Code Playgroud)
我尝试使用php选项,suhosin.simulation = On但没有改变任何东西所以它似乎不是Suhosin-Patch.
记录......这是你添加的gettext方式OS X Lion
运行这些命令
tar xzvf icu4c-4_8_1-src.tgz
cd icu/source
./runConfigureICU MacOSX
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
运行这些命令
tar -zxf php-5.3.6.tar.gz
cd ext/intl
phpize
./configure --enable-intl
make
sudo cp modules/intl.so /usr/lib/php/extensions/no-debug-non-zts-20090626/
Run Code Online (Sandbox Code Playgroud)
把它放在你的php.ini文件中
extension=intl.so
Run Code Online (Sandbox Code Playgroud)
运行这些命令
tar -zxf gettext-0.18.1.1.tar.gz
cd gettext-0.18.1.1
Run Code Online (Sandbox Code Playgroud)
Apple不会发送Gettext和Intl,问题在于Gettext显然定义了Stpncpy函数,Lion中的内容也是如此.
您需要打开gettext-tools/gnulib-lib/stpncpy.c并更改stpncpyto的所有引用stpncpy2
然后运行这些命令
./configure
make
sudo make install
Run Code Online (Sandbox Code Playgroud)
回到PHP源目录:
运行这些命令
cd ext/gettext
phpize
./configure --with-gettext
make
sudo cp modules/gettext.so /usr/lib/php/extensions/no-debug-non-zts-20090626/
Run Code Online (Sandbox Code Playgroud)
并将其添加到php.ini文件中:
extension=gettext.so
Run Code Online (Sandbox Code Playgroud)
参考文献:http: //www.ittreats.com/os/php/php-with-intl-and-gettext-on-osx-lion-bertrand-mansion.html
| 归档时间: |
|
| 查看次数: |
1523 次 |
| 最近记录: |