Min*_*lip 11 php yaml mamp configure pecl
我正在与Git上的许多开发人员合作开发一个项目,现有的代码库使用PECL YAML PHP扩展(v1.0.1).
我已经尝试了许多步骤在我的MAMP服务器上安装PECL YAML扩展,并且没有任何乐趣!
我假设其他开发人员在Linux上.
安装中的前几次尝试在我的php_error_log中显示此错误:
"[2011年7月16日11:29:13] PHP警告:PHP启动:无法加载动态库'/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts- 20090626/yaml.so' - dlopen(/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/yaml.so,9):找不到合适的图像.找到了:/Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/yaml.so:macho-o,,,,,,,,,,,,,,,,
经过大量的时间谷歌搜索后,我意识到我并不孤单,这是因为我使用"./pecl i yaml"编译的扩展名是64位版本
"file yaml.so":yaml.so:Mach-O 64位包x86_64
但是,将此与我的MAMP设置上的工作扩展进行比较,即"file xdebug.so":
xdebug.so:具有2个架构的Mach-O通用二进制文件
xdebug.so(用于架构ppc):Mach-O bundle ppc
xdebug.so(用于架构i386):Mach-O bundle i386
所以我发现了一些帮助我确定确切问题的博客.
无法在32位MAMP服务器上运行64位扩展 - 这是有道理的.
我的安装过程是:
使用博客中的命令运行.configure:
"CFLAGS =' - O3 -fno-common -arch i386 -arch x86_64 -g -Os'LDFLAGS =' - O3 -arch i386 -arch x86_64'CXXFLAGS =' - O3 -fno-common -arch i386 -arch x86_64 -g -Os'./configure --disable-dependancy-tracking --disable-shared -enable-static"
使
"sudo cp modules/yaml.so /Applications/MAMP/bin/php5.3/lib/php/extensions/no-debug-non-zts-20090626/."
除了我之外,上述解决方案似乎对所有人都有效.
我的错误日志现在报告:
[16-Jul-2011 11:09:25] PHP警告:PHP启动:无效的库(可能不是PHP库)'yaml.so'在第0行的Unknown中
我现在花了好几个小时就需要你的帮助.
我实际上要做的就是用PHP解析YAML.
我有2个选择:
修复它并呼吸一种缓解的迹象
请改用PHP YAML解析类,以后再避免使用此扩展
选项2的问题是由于我无法安装扩展程序,代码库会发生变化.
任何建议或解决方案将不胜感激.
干杯
Rif*_*fat 17
如果您安装了Homebrew,那么您可以:
brew install libyaml --universal
否则安装最新的libyaml.
您可以通过设置CFFLAGS和LDFLAGS来构建32位和64位Intel -arch i386 -arch x86_64.
然后,安装PEAR/PECL(您也可以按照此处的说明操作)
wget http://pear.php.net/go-pear.phar
sudo php -d detect_unicode=0 go-pear.phar
默认情况下,它将安装在~/pear/目录中.现在跑
sudo ~/pear/bin/pecl install yaml
然后,处理so文件.
这篇好文章将演示如何手动安装MAMP堆栈.
嗯,这并不能真正解决你的问题。但如果你只想解析 YAML,我建议使用Symfony YAML 类,它是一个非常易于使用的用于解析 YAML 的类。速度还可以,错误信息也很清楚。
是的,它会改变代码库,但这并不是一件坏事。我认为,当您可以避免使用这样的 PECL 扩展时,这是一个优点,因为您现在遇到的问题,如果您需要切换到其他服务器,您会很高兴您不必检查/安装 25 个 PECL 扩展(及其正确版本)。
所以我的建议是,切换到 YAML 类。这将使生活更轻松!:)
| 归档时间: | 
 | 
| 查看次数: | 7330 次 | 
| 最近记录: |