Xcode 12 Authenticating with the App Store...

本文解决Xcode12上传AppStore时遇到的验证卡住问题,通过替换~/Library/Caches/com.apple.amp.itmstransporter文件夹内的内容实现,提供百度网盘及GitHub下载链接。

1、前言

以前写了Xcode11的解决方法:Xcode 11 Authenticating with the App Store…,本来Xcode12是可以的,不过最近又出现了问题,,这次是上传AppStore卡在一直验证等问题

2、解决方案

解决方法和11一样,就是文件应该是更新了,所以要重新处理下文件内容。
1、解决办法,更换~/Library/Caches/com.apple.amp.itmstransporter 下的内容
因为自己下载比较慢,所以这里把资料放到网盘,提供方便下载

链接:[百度网盘下载地址](链接: https://pan.baidu.com/s/1vSpTa3xqKXMi6AC5em2hdA 密码: lrfu)
密码:lrfu
也可以在github下载:com.apple.amp.itmstransporter.zip

# 在终端中操作
# 第一步 打开文件
open ~/Library/Caches/com.apple.amp.itmstransporter/
# 第二步 删除里面内容 将下载内容替换进去
# 或者直接替换com.apple.amp.itmstransporter这个文件夹
# 第三步 重启Xcode

注意:保存好这个原始文件,每次使用执行上面终端里面的步骤即可
非常感谢下面这个文章
参考链接:
升级Xcode12.2后上传App Store一直卡住的问题

<think>我们正在解决的是在 macOS 上安装 Xcode 时遇到的错误:`telnet: An unsatisfied requirement failed this build.`。根据引用[2]和引用[3]中的错误信息,问题在于安装telnet时要求完整安装Xcode.app,而不仅仅是命令行工具(Command Line Tools)。错误提示明确说明:“A full installation of Xcode.app is required to compile this software. Installing just the Command Line Tools is not sufficient.” 因此,解决步骤应该是: 1. **确认Xcode是否已完整安装**:在终端运行以下命令: ```bash xcode-select -p ``` 如果输出是`/Library/Developer/CommandLineTools`,那么说明只安装了命令行工具,而没有安装完整的Xcode。 2. **安装完整版Xcode**:从Mac App Store下载并安装Xcode。安装完成后,打开Xcode一次以完成初始化和同意许可协议。 3. **设置Xcode路径**:安装完成后,在终端运行以下命令设置Xcode路径: ```bash sudo xcode-select -s /Applications/Xcode.app/Contents/Developer ``` 4. **再次尝试安装telnet**:使用Homebrew安装telnet: ```bash brew install telnet ``` 另外,引用[2]和引用[3]中还提到系统版本较旧(如macOS 10.14或11),这些版本可能不再受支持。如果系统版本过旧,可能需要考虑升级macOS,或者寻找其他方法安装telnet(如直接下载二进制文件)。 如果用户不想安装完整的Xcode(因为Xcode体积较大),也可以尝试只安装命令行工具,但根据错误提示,这不足以编译telnet。不过,我们可以尝试重新安装命令行工具: ```bash xcode-select --install ``` 然后再次尝试安装telnet。但根据错误提示,这个方法可能无效,因为telnet的编译需要完整的Xcode。 如果问题仍然存在,可以尝试以下步骤: 5. **更新Homebrew**: ```bash brew update ``` 6. **升级已安装的包**(特别是那些过时的): ```bash brew upgrade ``` 7. **检查Homebrew环境**: ```bash brew doctor ``` 根据`brew doctor`的输出修复相关问题。 如果用户使用的是M1芯片的Mac,还需要注意是否安装了Rosetta兼容层(如果telnet没有提供arm64版本)。但根据引用[3]中的错误信息,主要问题还是Xcode的安装。 总结解决方案: - 安装完整版Xcode(从App Store安装)。 - 设置Xcode路径。 - 确保Xcode许可协议已同意(打开一次Xcode)。 - 再次运行`brew install telnet`。 如果系统版本过旧,考虑升级系统。 如果用户不想安装Xcode,可以尝试使用其他工具(如`nc`)替代telnet,或者从源代码编译telnet(但同样需要Xcode)。 最后,如果用户只是需要测试端口连通性,可以尝试使用其他命令替代telnet,例如: ```bash nc -zv 主机名 端口号 ``` 例如: ```bash nc -zv example.com 80 ``` 这将测试example.com的80端口是否开放。</think>根据引用内容,您在 macOS 上安装 telnet 时遇到的 "Xcode can be installed from the App Store. Error: An unsatisfied requirement failed this build" 错误,是由于 Xcode 依赖问题导致的。以下是完整的解决方案: ### 解决方案步骤 1. **安装完整版 Xcode** ```bash # 1. 打开 App Store 搜索安装 Xcode # 2. 安装完成后打开一次 Xcode 接受许可协议 sudo xcode-select --install # 安装命令行工具 sudo xcodebuild -license accept # 接受许可协议 ``` 2. **更新 Homebrew 环境** ```bash brew update-reset # 重置 Homebrew 仓库 brew update # 更新 Homebrew brew doctor # 检查环境问题 ``` 3. **安装 GCC 编译器(替代系统 clang)** ```bash brew install gcc # 安装最新 GCC export CC=/usr/local/bin/gcc-12 # 使用 GCC 替代 clang(版本号需匹配) export CXX=/usr/local/bin/g++-12 ``` 4. **强制重新安装 telnet** ```bash brew reinstall telnet --build-from-source # 强制从源码编译 ``` 5. **验证安装** ```bash telnet -V # 应显示版本信息如 "telnet 0.17" which telnet # 应返回路径如 "/usr/local/bin/telnet" ``` ### 关键注意事项 1. **系统版本兼容性** 如引用[2][3]所示,macOS 10.14/11 等旧版本可能不再受支持: - 建议升级到最新 macOS 版本(Ventura 或更高) - 若无法升级,尝试: ```bash brew install telnet --force-bottle # 强制使用预编译包 ``` 2. **M1 芯片特殊处理** 如引用[5]所述: ```bash arch -arm64 brew install telnet # 指定 ARM 架构编译 ``` 3. **权限修复** 如引用[5]提到的权限问题: ```bash sudo chown -R $(whoami) /usr/local/* # 修复 Homebrew 目录权限 ``` 4. **替代方案** 若仍失败,可使用替代工具: ```bash # 1. 使用 netcat 测试端口 nc -zv example.com 80 # 2. 安装替代工具 brew install netcat # 或 nmap ``` > **提示**:完整 Xcode 安装约需 20GB 空间,如果仅需端口测试功能,建议直接使用 `nc` 命令替代 telnet [^4]。 --- ### 相关问题 1. **如何在 macOS Ventura 上修复 "Xcode requirement not satisfied" 错误?** 2. **M1 Mac 安装 Homebrew 软件包时出现架构兼容问题怎么办?** 3. **除了 telnet,还有哪些工具可以测试网络端口连通性?** 4. **如何彻底重置 Homebrew 环境解决安装失败问题?** 5. **macOS 旧版本(如 Catalina)如何安全升级开发工具链?**
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值