Homebrew说Xcode已经过时了

时间:2016-10-28 01:48:41

标签: xcode command-line homebrew

我正在尝试使用Homebrew执行软件包的安装,但是当我尝试运行安装时,我收到以下错误:

  

错误:您的Xcode(7.3.1)已过时。   请更新到Xcode 8.0(或删除它)。   Xcode可以从App Store更新。

我想在这台机器上保留Xcode 7.3.1 ,因为我在另一台机器上安装了Xcode 8,并且正在使用这个用于旧项目。

我在SO上发现了类似的帖子,但设置export TRAVIS=1的建议解决方案似乎对我不起作用。希望某人有我可能使用的修复或解决方法。以下是我的一些细节:

Xcode 7.3.1
Homebrew 1.0.8-135-g4284b82
macOS Sierra 10.12 (16A323)

如果需要其他任何细节,请告诉我。

谢谢你们!

6 个答案:

答案 0 :(得分:42)

正如@NicolasMiari在上面的评论中提到的,我的问题的修复最终必须在我的机器上同时拥有Xcode 7和Xcode 8。我去了苹果开发者网站,下载了Xcode 8,将其保存到我的文档中,然后使用:

sudo xcode-select -switch ~/Documents/Xcode.app/

然后运行我的brew安装,按预期工作。之后我跑了:

sudo xcode-select -switch /Applications/Xcode.app/

切换回Xcode 7.3.1。

希望这有助于其他人,并感谢您的建议。

答案 1 :(得分:2)

重命名对我有用:

Xcode - > Xcode-old
Xcode-beta - > Xcode

答案 2 :(得分:0)

  1. 根据https://github.com/Homebrew/brew/issues/4957过时的自酿啤酒可能导致此问题,请brew update-reset对其进行解决。

  2. 如果步骤1不起作用,请使用以下命令重新安装自制软件 /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

答案 3 :(得分:0)

就像this

打开文件/usr/local/Homebrew/Library/Homebrew/extend/os/mac/diagnostic.rb

然后在以下函数中删除此行check_xcode_minimum_version

def fatal_build_from_source_checks
    %w[
      check_xcode_license_approved
      check_xcode_minimum_version
      check_clt_minimum_version
      check_if_xcode_needs_clt_installed
    ].freeze
    end

然后brew install正常工作。

答案 4 :(得分:-1)

在终端

中运行此代码
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" < /dev/null 2> /dev/null ; brew install caskroom/cask/brew-cask 2> /dev/null

然后尝试在代码下面运行,

brew install jenkins

希望这可以解决

答案 5 :(得分:-1)

两种选择: 1.最好的选择是先更新你的xcode,然后按照@George H的推荐。 &#34; 正如@NicolasMiari在上面的评论中提到的,我的问题的修复最终必须在我的机器上同时拥有Xcode 7和Xcode 8。我去了苹果开发者网站,下载了Xcode 8,将其保存到我的文档中,然后使用:

sudo xcode-select -switch~ / Documents / Xcode.app / 然后运行我的brew安装,按预期工作。之后我跑了:

sudo xcode-select -switch /Applications/Xcode.app/ 切换回Xcode 7.3.1。&#34;

  1. 将xcode-select设置为CommandLineTools的路径。 sudo xcode-select --switch / Library / Developer / CommandLineTools。 正如here
  2. 所述

    两种选择都很有效。