使用composer在OSX 10.9.2上创建项目符号的分段错误


Segmentation fault using composer to create-project symfony on OSX 10.9.2

我正在为我的下一个php项目试用Symfony2。根据书中的说明,我下载了composer,然后使用此命令在我的开发Mac OSX 10.9.2系统上创建我的项目:

$ php composer.phar create-project symfony/framework-standard-edition Chaap

/usr/local/zend/bin/php:行4:51827分段错误:11$ZCE_PREFIX/bin/php.bin-c$ZCE_PRIFIX/etc/php.ini"$@"

由于分段错误而出错:11。

我在托管的Linux测试服务器上使用了相同的命令:

$ php -c ~/public_html composer.phar create-project symfony/framework-standard-edition Chaap
Installing symfony/framework-standard-edition (v2.4.3)
  - Installing symfony/framework-standard-edition (v2.4.3)
...

这是有效的。我看了一下两者上的php版本:

Macintosh上的版本:

$ php -v
PHP 5.3.28 (cli) (built: Jan 28 2014 01:25:48) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
    with Zend Extension Manager v6.0.0, Copyright (c) 2003-2014, by Zend Technologies
    - with Zend Data Cache v6.0.0, Copyright (c) 2004-2014, by Zend Technologies [loaded] [licensed] [disabled]
    - with Zend Job Queue v6.0.0, Copyright (c) 2004-2014, by Zend Technologies [loaded] [licensed] [enabled]
    - with Zend Utils v6.0.0, Copyright (c) 2004-2014, by Zend Technologies [loaded] [licensed] [enabled]
    - with Zend Optimizer+ v6.0.0, Copyright (c) 1999-2014, by Zend Technologies [loaded] [licensed] [disabled]
    - with Zend Code Tracing v6.0.0, Copyright (c) 2009-2014, by Zend Technologies [loaded] [licensed] [enabled]
    - with Zend Monitor v6.0.0, Copyright (c) 1999-2014, by Zend Technologies [loaded] [licensed] [disabled]
    - with Zend Debugger v5.2, Copyright (c) 1999-2009, by Zend Technologies [loaded] [licensed] [enabled]
    - with Zend Page Cache v6.0.0, Copyright (c) 2004-2014, by Zend Technologies [loaded] [licensed] [disabled]
$ /usr/local/zend/apache2/bin/httpd -v
Server version: Apache/2.2.23 (Unix)
Server built:   Dec 24 2013 11:31:16

Linux盒子上的版本:

$ php -v
PHP 5.3.27 (cli) (built: Feb 11 2014 13:05:44) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2013 Zend Technologies
    with the ionCube PHP Loader v4.4.1, Copyright (c) 2002-2013, by ionCube Ltd., and
    with Zend Guard Loader v3.3, Copyright (c) 1998-2010, by Zend Technologies
$ httpd -v
Server version: Apache/2.2.26 (Unix)
Server built:   Feb 11 2014 12:59:55
Cpanel::Easy::Apache v3.24.11 rev9999 +cloudlinux

我目前的解决方法是在测试机器上创建项目,然后将其复制回我的开发机器。但我的Macintosh可能还有其他问题,这些问题会导致其他问题。有人看到并解决了这个问题吗?

麦金托什正在使用ZendServer 6.3 CE测试机器使用的是它当前面板使用的任何东西生产机器使用ZendServer 6.3

感谢您的关注。

更新2014-04-13

解决方法#2。使用osx 10.9.2。

  1. 使用macports安装memchche和acp:此处
  2. 使用macports:sudo port install php54-intl安装intl.so

现在内置php:的版本

sh-3.2# /usr/bin/php -v
PHP 5.4.24 (cli) (built: Jan 19 2014 21:32:15) 
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2013 Zend Technologies

创建项目:

$ /usr/bin/php composer.phar create-project symfony/framework-standard-edition Symfony
Installing symfony/framework-standard-edition (v2.4.3)
  - Installing symfony/framework-standard-edition (v2.4.3)
    Downloading: 100%         
Created project in Symfony
...

仍然没有解决创建项目和ZendServer 6.3 的问题

如上所述,我也遇到了同样的问题,对我来说,这显然是我的权限错误,这就是为什么用sudo执行composer.phar有效的原因。

我的问题是,我所有的项目都直接放在htdocs文件夹中。相反,我放置了一个符号链接htdocs,它指向我的基本User文件夹中的另一个文件夹。塔达现在在没有须藤的情况下工作。这是因为到和htdocs的路径本身将root作为所有者,将wheel作为组(至少在我的情况下是这样),并且给定的权限不足以作为用户执行composer。

希望这能帮助到别人;)