【问题标题】:Building a 32bit xdebug.so for AMPPS 3.2 under MacOSX 10.10 Yosemite在 Mac OS X 10.10 Yosemite 下为 AMPPS 3.2 构建 32 位 xdebug.so
【发布时间】:2015-09-03 08:57:58
【问题描述】:

我下载了 xdebug-2.3.3 源并运行了命令:

  1. php化

  2. ./configure --enable-xdebug --with-php-config=/Applications/AMPPS/php-5.6/bin/php-config "CFLAGS=-m32" "CPPFLAGS=-m32" "LDFLAGS =-m32"

  3. 制作

  4. lipo -info modules/xdebug.so

上面写着“非胖文件:modules/xdebug.so 是架构:x86_64”

我需要在 MacOSX Yosemite 上编译为 32 位,因为 AMPPS 无法加载 64 位 xdebug.so。有什么帮助吗?

谢谢。

【问题讨论】:

    标签: macos xdebug


    【解决方案1】:

    这对我有用:

    解压源后,确保cd到解压文件的根目录(即确保当前目录包含Makefile)。

    对于第 1 步:

    $ /Applications/AMPPS/php-5.6/bin/phpize
    

    对于第 2 步:

    $ CPPFLAGS="-m32 -I /Applications/AMPPS/extra/include" CFLAGS="-m32" LDFLAGS="-L /Applications/AMPPS/extra/lib" ./configure --enable-xdebug --with-php-config=/Applications/AMPPS/php-5.6/bin/php-config
    

    然后,做

    $ make
    $ cp modules/xdebug.so /Applications/AMPPS/php-5.6/lib/extensions/ext
    

    然后通过添加以下行来修改/Applications/AMPPS/php-5.6/etc/php.ini

    zend_extension = /Applications/AMPPS/php-5.6/lib/extensions/ext/xdebug.so
    

    验证安装是否成功。

    $ /Applications/AMPPS/php/bin/php --version
    PHP 5.6.17 (cli) (built: Jan 10 2016 00:44:01) 
    Copyright (c) 1997-2015 The PHP Group
    Zend Engine v2.6.0, Copyright (c) 1998-2015 Zend Technologies
        with the ionCube PHP Loader v5.0.17, Copyright (c) 2002-2015, by ionCube Ltd.
        with Xdebug v2.4.0RC4, Copyright (c) 2002-2016, by Derick Retinas
    

    您应该在最后一行看到“with Xdebug”,就像在我的示例输出中所做的那样。

    【讨论】:

    • 您能否更具体地说明事情是如何发生的,而不是仅仅对此投反对票?
    • 当然。一直在说架构不正确。嗯,昨天我已经通过下载旧版本的xdebug并正常重新编译解决了这个问题。