如何在macOS中升级Swift Tools?运行Core ML版Stable Diffusion遇版本错误
解决Core ML版Stable Diffusion运行时Swift Tools版本不兼容问题
问题重现
运行Core ML版Stable Diffusion时触发报错:
error: package at '/Documents/Diffusion/Apple_Diffuser/ml-stable-diffusion_swift' is using Swift tools version 5.7.0 but the installed version is 5.5.0
解决方案
Swift Tools版本与Xcode绑定,以下是针对性解决步骤:
1. 确认Xcode版本匹配
Swift Tools 5.7.0要求Xcode 14.0及以上,且Xcode 14.0需要macOS Monterey 12.5+。先检查当前Xcode版本:
在终端执行:
xcodebuild -version
若输出的Swift版本仍为5.5.0,说明默认Xcode未切换到新版。
2. 切换默认Xcode到新版
如果已安装Xcode 14+,执行以下命令指定默认Xcode路径(路径根据实际安装情况调整,比如Xcode-beta.app):
sudo xcode-select -s /Applications/Xcode.app/Contents/Developer
再次执行xcodebuild -version确认Swift版本是否更新为5.7.0+。
3. 修复Command Line Tools关联
若Command Line Tools未关联到新版Xcode,先重置关联:
sudo xcode-select -r
再重新指定到新版Xcode路径,或通过Xcode偏好设置(Xcode > Settings > Locations)选择正确的Command Line Tools版本。
4. 应急方案:修改项目Swift工具版本
若暂时无法升级Xcode,可临时修改项目根目录的Package.swift文件,将开头的:
// swift-tools-version:5.7
改为:
// swift-tools-version:5.5
注意:此操作可能导致部分依赖或语法不兼容,需测试项目能否正常运行。
5. 清理缓存解决版本识别异常
若仍有问题,清理Swift包管理器和Xcode缓存:
rm -rf ~/Library/Caches/org.swift.swiftpm rm -rf ~/Library/Developer/Xcode/DerivedData
重启终端和Xcode后重试。
内容的提问来源于stack exchange,提问作者DrRaspberry
相关产品推荐
相关产品推荐

