Xcode 当前无法从软件更新服务器获得
Posted
技术标签:
【中文标题】Xcode 当前无法从软件更新服务器获得【英文标题】:Xcode is not currently available from the Software Update server 【发布时间】:2013-11-23 07:50:45 【问题描述】:更新到 OS X 10.9 后,我的 macport 出现问题。
我尝试按照本手册https://trac.macports.org/wiki/Migration 进行修复。
但是当我安装命令行工具时:
xcode-select --install
我收到消息
无法安装该软件,因为它目前无法从 软件更新服务器。
与此同时,我成功地将我的另一台机器更新到了 OS X 10.9。并安装了没有问题的命令行工具,因此它们必须可用。
这里有什么问题?
【问题讨论】:
“目前不可用”可能只是这个意思,它会在以后可用。 与普遍看法相反,这也可能意味着您已经安装了命令行工具。似乎错误消息有点误导 @AmericoSavinon 根据这篇文章,您是正确的:osxdaily.com/2014/02/12/install-command-line-tools-mac-os-x。如果链接失效,这里是文章中的一个 sn-p:“收到一条错误消息,上面写着“无法安装该软件,因为它当前无法从软件更新服务器获得”?那么你很幸运,因为该错误消息可能表明您已经在 Mac 上安装了 Xcode。” 如果它已经安装,我看不出它的运气如何,因为 xcode-select --install 仍然要求添加 devtools :( 如果收到此消息,第一步是确保 mac OS(通过系统偏好设置)和 Xcode(通过 App Store)是最新的。然后运行 Xcode,确保它可以运行(有时它会询问是否要安装其他组件 - 说是)。如果有任何更新,现在再试一次。 【参考方案1】:您可以从这里手动下载 OS X Mavericks 的命令行工具:
https://developer.apple.com/downloads/index.action?name=for%20Xcode【讨论】:
这对我有用。我使用我的 Apple ID 登录。我不是 100% 确定我什至有一个有效的 Apple Developer 许可证,但我过去做过。您可能需要一个现有的开发者帐户才能进入,但链接和安装程序确实对我有用。 Nikos M. 提供的链接是正确的。点击here!但是,如果没有注册 Apple 开发人员,您将无法再下载这些工具。因此,要么使用您的 Apple Developer ID 登录,要么单击“注册”,同意 Apple 的条款,完成注册,再次尝试链接,“瞧”它可以工作了!干杯,Jalh 刚试过。只要您使用开发帐户登录,它就可以正常工作。 +1 非常感谢!我只是建议使用“命令行工具”作为搜索条件:点击以下Link 更新 - 这对我来说也可以在 OSX Mojave 中解决这个问题【参考方案2】:对于 OSX 10.11 或更高版本,您可以从此处https://developer.apple.com/download/more/ 下载。
(已接受答案中的链接不显示 El Capitan (OSX 10.11) 的命令行工具)
【讨论】:
也适用于 Sierra(2016 年 9 月)。 也曾为 Catalina 工作过(2020 年 10 月) 手动安装命令行工具也为我解决了这个问题! (macOS Catalina) 我不得不用sudo xcode-select --switch /Library/Developer/CommandLineTools/
跟进这个问题(见 Basav 的回答)
Catalina 2020 年 11 月已确认。我绝对喜欢这个人。【参考方案3】:
如果您在最新的 Mac OS X Mavericks 上尝试此操作,Xcode 5.x 附带命令行工具
所以请确保您已安装 Xcode 并将其更新到最新版本
然后确保使用此命令正确指向 Xcode 命令行工具
xcode-select -p
这可能会显示一些类似的路径
/Applications/Xcode.app/Contents/Developer
使用 switch 命令将路径更改为正确的路径:
sudo xcode-select --switch /Library/Developer/CommandLineTools/
这应该可以帮助您将其设置为正确的路径,之后您可以使用与上述相同的命令 -p 来检查它是否设置正确
【讨论】:
嗯 - 我有相同的旧路径,并更新了它,但这似乎没有效果。 @PeterEhrlich,我同意如果您尝试xcode-select --install
,错误消息仍然出现,这似乎没有任何效果。 确实 似乎发生的是,这更正了路径,以便已经由 Xcode5 安装的命令行工具现在可以由xcode-select
找到。遵循此建议后,我能够成功安装 homebrew
,但一直失败。
这是为我做的。旧路径是从旧版本升级的结果吗?
如果没有安装命令行工具,则打印xcode-select: error: invalid developer directory '/Library/Developer/CommandLineTools/'
。所以@PeterGluck 似乎是对的,这个答案的命题只与问题中的问题无关。【参考方案4】:
我遇到了与Can't install the software because it is currently not available from the Software Update Server
相同的问题。您可以尝试以下步骤,以使软件更新启动命令行工具的更新。
-
使用以下命令检查要更新的软件列表中是否提到了命令行工具更新:
softwareupdate -l
如果该列表中未提及命令行工具更新,则使用以下命令手动使其成为列表的一部分,该命令将创建一个临时文件:sudo touch /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
再次运行softwareupdate -l
,验证列表现在是否包含提到的命令行工具。
现在,按 Cmd+Space 启动 Mac 的 Spotlight 搜索。搜索Software Update
。启动Software Update
。
这将显示以下用于安装命令行工具的对话框。安装更新并快乐。 :)
删除步骤 2 中创建的临时文件:sudo rm /tmp/.com.apple.dt.CommandLineTools.installondemand.in-progress
。
【讨论】:
太棒了,我把自己锁在了我的苹果 ID 之外,因为我从来没有真正使用过它,除非苹果强迫我这样做。这让我可以安装 CMD 行工具,而无需等待两天解锁帐户。 在上述其他选项失败后,也在这里为我工作。 这对我有用!秘诀在于以下第 2 点【参考方案5】:由于 npm gyp 错误,我删除了 xcode-select -p 给出的命令工具目录。
xcode-select 安装文件失败,出现不可用错误。
我运行了 Xcode 应用程序和作为启动的一部分安装的命令工具。
npm 工作。
但是,这并没有完全修复工具。我不得不使用 xcode-select 将路径切换到 Xcode 应用程序目录中的 Developer 目录。
sudo xcode-select --switch /Applications/Xcode.app/Contents/Developer
MacOS 卡塔利娜。
【讨论】:
也为我工作。也谢谢你的开关代码。你是怎么知道切换文件位置的? @Interlated 当我运行命令“xcode-select: error: invalid developer directory '/Applications/Xcode.app/Contents/Developer'”时出现此错误。请你帮帮我。谢谢! @Bahman.A 您是否运行过 Xcode 并安装了开发者工具?【参考方案6】:我在升级到 10.14 Mojave 后遇到了同样的错误,并且不得不重新安装命令行工具(我不使用完整的 Xcode IDE,并且想要点菜的命令行工具)。
根据Basav's answer,我的xcode-select -p
路径是正确的,所以这不是问题。
我还按照Lambda W's answer 运行了sudo softwareupdate --clear-catalog
,然后重置为Apple Production,但没有任何区别。
有效的是User 92's answer 访问https://developer.apple.com/download/more/。
从那里我可以下载一个.dmg
文件,该文件有一个用于命令行工具的 GUI 安装向导:)
我安装了它,然后我重新启动终端,一切都恢复正常了。
【讨论】:
从 .dmg 安装对我有帮助。谢谢。【参考方案7】:我知道这是一篇旧帖子,但我今天也遇到了这个问题。我发现当我执行sudo softwareupdate -l
时,命令行工具被列为更新,所以我使用sudo softwareupdate -i -a
安装它们。
【讨论】:
你拯救了我的一天!谢谢! 这个问题可能是老问题,但它仍然是一个问题。苹果一点也不在乎。这对我来说是可行的解决方案。【参考方案8】:如果您使用的软件更新服务器没有托管所需的软件包,则可能会发生此错误。
你可以通过运行来检查这个
defaults read /Library/Preferences/com.apple.SoftwareUpdate
并查看您是否有一个名为 CatalogURL 或 AppleCatalogURL 的条目
您可以通过删除此条目或使用命令来指向 Apple 软件更新服务器
sudo softwareupdate --clear-catalog
然后再次运行命令行工具安装。
【讨论】:
这似乎是我的原因。我有一个内部公司地址作为我的CatalogURL
。不过,我还没有尝试过您的解决方案,因为我想保持公司工作站的合规性。有没有办法在不清除现有源的情况下添加源?否则,通过 Apple 的门户网站下载文件似乎是一种可接受的解决方法。
哇哇!我被困在 10.15.1,无法升级到 10.15.5,因为它说我是最新的。做defaults read ...
说目录是CatalogURL = "https://swscan.apple.com/content/catalogs/others/index-10.12-10.11-10.10-10.9-mountainlion-lion-snowleopard-leopard.merged-1.sucatalog.gz";
清除目录然后我现在可以更新了!!谢谢!!
此命令不再适用于 Big Sur:它打印“不再支持目录管理”
如果您在 MacOS Catalina 10.16 上运行,它将显示已弃用,并将在下一版本中删除。【参考方案9】:
我在 MacOS Catalina 上遇到了同样的问题。
我想我找到了根本原因:我已切换默认 Apple ID 帐户,而新帐户未激活为开发者帐户。当我运行xcode-select --install
命令时,我得到了与问题描述中所述相同的错误。
在阅读了关于 *** 的这篇文章后,我继续使用 https://developer.apple.com/downloads 并被要求接受开发者条款。我认为它使我的帐户成为开发人员帐户。然后,我再次尝试运行xcode-select --install
,它成功了。
【讨论】:
【参考方案10】:命令
xcode-select --install
提出 3 个选项:获取 Xcode;现在不要;安装。
当我选择获取完整的 Xcode 时,命令成功完成。花了一些时间,但这样我就能够完成所有 macports 迁移说明。
【讨论】:
在 Mavericks 上执行命令并尝试该选项时,在 App Store 中显示为已安装,安装选项收到以下消息“无法安装该软件,因为它目前无法从软件更新服务器”我在 Mavericks 上安装了 Xcode 5.0.2。 这不应该是公认的答案,Nikos M 的答案更有帮助。 这对我没有影响。安装 Xcode 后,Homebrew install 仍然想安装命令行工具——即使我重新启动了终端(以排除需要更新环境变量的情况)。在developer.apple.com/download/more/?name=for%20Xcode,命令行工具作为单独的包提供的事实表明它们没有与 Xcode 捆绑在一起。【参考方案11】:一旦您按照 Nikos M 在上面出色回答中的描述加载了命令行工具,您将需要同意 gcc 许可证,如果您使用的是 ruby gem,您可能需要将 llvm-gcc 链接为 gcc-4.2。
如果您不执行这些操作,gem install 将报告“您必须先安装开发工具”。在你已经安装它们之后。
步骤如下:
sudo gcc
sudo ln -s /usr/bin/llvm-gcc /usr/bin/gcc-4.2
gcc 必须在 sudo 下运行一次,以便 Apple 可以更新其许可证信息,您不需要输入文件,它会在检查其参数之前更新许可证。需要该链接,以便 ruby 1.9 在构建某些 gem(例如调试器)时可以找到编译器。这可能在 ruby 2.x 中已修复,但当我到达那里时,我会越过那座桥。
【讨论】:
这个答案似乎解决了我的问题。第一行没有执行,但我还是运行了第二行,然后一切正常。 @RedEye 如果第一行没有执行,则意味着 Apple 已经更新了许可证,然后抱怨缺少参数。它仅在第一次提示许可证。【参考方案12】:I had to run Xcode.app and agree to the License Agreement
设置:带有 Mavericks 的全新 MacBook,然后 brew install 和其他 c/l 类型的东西“正常工作”。
【讨论】:
【参考方案13】:我通过访问 App Store 并安装 Xcode 解决了这个问题。
这是一个相当大的 11GB 安装,所以这可能是矫枉过正。但是,作为最后的手段,它似乎解决了我的问题。在安装过程中(大约 10GB),Mac OS 告诉我有一个 Xcode 命令行工具的更新。在完全安装 Xcode 之前,执行此安装不会修复任何问题。
安装完成后,它应该开始工作(在您接受许可协议后)。
【讨论】:
【参考方案14】:Command + 空格键
搜索 Xcode
打开它并接受许可
然后从终端xcode-select --install
再次运行
【讨论】:
【参考方案15】:遇到了同样的问题并且遇到了同样的错误。当我运行xcode-select -p
时,它的输出为/Library/Developer/CommandLineTools
。这意味着 xcode 已经安装在我的系统中。然后我按照answer 上的步骤运行。之后任何需要 xcode 的命令都成功运行。
【讨论】:
以上是关于Xcode 当前无法从软件更新服务器获得的主要内容,如果未能解决你的问题,请参考以下文章