如何通过 Homebrew 从 master 构建 php70-xdebug?

如何通过 Homebrew 从 master 构建 php70-xdebug?

我已经php70-xdebug打包并执行了以下步骤:

  1. 编辑公式brew edit php70-xdebug
  2. 然后替换以下行:

    url "https://pecl.php.net/get/xdebug-2.5.5.tgz"
    

    和:

    url "https://github.com/xdebug/xdebug/archive/master.zip"
    
  3. 通过以下方式运行重新安装:brew reinstall php70-xdebug --build-from-source

然而它失败了:

Error: invalid attribute for formula 'homebrew/php/php70-xdebug': version (nil)
/usr/local/Homebrew/Library/Homebrew/formula.rb:252:in `validate_attributes!'
/usr/local/Homebrew/Library/Homebrew/formula.rb:199:in `initialize'
/usr/local/Homebrew/Library/Taps/homebrew/homebrew-php/Abstract/abstract-php-extension.rb:20:in `initialize'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:88:in `new'
/usr/local/Homebrew/Library/Homebrew/formulary.rb:88:in `get_formula'

我发现build.head下面这一行中有对的引用:

Dir.chdir "xdebug-#{version}" unless build.head?

这表明可以使用 HEAD 进行构建,但我不确定如何进行。

php70-xdebug使用最新的 HEAD 从源重新安装的正确方法是什么?

答案1

从 HEAD 安装软件包的正确方法是添加--HEAD参数,例如

brew reinstall php70-xdebug --build-from-source --HEAD

如果传递了--HEAD--devel,则获取该版本而不是稳定版本。

看:man brew


错误:公式‘homebrew/…’的属性无效:版本(nil)

表示缺失的内容version应添加如下:

version "2.6.0-dev"

紧接url在行之后(参见例子这里)。

相关内容