我正在我的系统上使用 BUILD_LIBRARY_FOR_DISTRIBUTION= Yes 手动创建 Xcframework。如果我将它在本地与我的测试应用程序集成,那么它工作正常,但是当我将它推送到远程时,它会给出下面定义的错误。
我使用的工具和版本: Xcode 15.0.1, 斯威夫特版本5.9.0
**Azure Pipeline 上的确切错误:**编译器不支持此 SDK(该 SDK 是使用“Apple Swift 版本 5.9 (swiftlang-5.9.0.128.108 clang-1500.0.40.1)”构建的,而此编译器是“Apple Swift 版本 5.7.2 (swiftlang-5.7.2.135.5 clang-1400.0.29.51)”)。
我在开发者门户上看到 Xcode14.2 支持 5.7.2。
我尝试使用此 BUILD_LIBRARY_FOR_DISTRIBUTION = 是的,但它对我没有帮助
仔细查看错误内容:
SDK需要Swift 5.9,但安装的编译器只能做5.7。
因此,由于 Swift 5.9 需要 Xcode 15 并且您在管道上运行 Xcode 14.2,因此您应该更改管道作业以使用 Xcode 15。在构建之前,您可能需要在作业中运行
xcode-select
以切换到较新的 Xcode 版本。
我通过安装 Swift 5.7.2 并在 ToolChain 中选择 5.7 获得了替代解决方案,它对我有用。
安装特定的 Swift 版本: https://shawnbaek.com/2020/09/20/how-to-use-an-older-version-of-swift-on-xcode-12/