使用 Xcode 12 中的 xcodebuild 并为 Mac 构建,如何防止它尝试为 arm64 构建?
我正在尝试通过 xcodebuild 在命令行上构建库(mailcore2)的存档,以便为 SPM 分发创建 xcarchive。
在 Xcode 11 上,此命令可以正常工作:
xcodebuild archive -scheme "mailcore osx" \
-destination "platform=OS X" \
-archivePath "$BUILD_DIR/mailcore2.macOS.xcarchive" \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES
但是,在 Xcode 12 上,此消息失败:
The following build commands failed:
Ld /Users/<USER>/Library/Developer/Xcode/DerivedData/mailcore2-fuubwipfjyvskpfsxtortvjsugny/Build/Intermediates.noindex/ArchiveIntermediates/mailcore\ osx/IntermediateBuildFilesPath/mailcore2.build/Release/mailcore\ osx.build/Objects-normal/arm64/Binary/MailCore normal arm64
看起来它在尝试为 arm64(Apple Silicon)构建时失败了,这是有道理的,因为依赖项还没有为 arm Mac 构建。现在没什么大不了的,我只会为 x86_64 Mac 构建。经过一番搜索,我发现您可以在参数下指定架构,-destination
如下所示:-destination "platform=OS X,arch=x86_64"
但是当我尝试使用它时,以下只是以同样的方式失败:
xcodebuild archive -scheme "mailcore osx" \
-destination "platform=OS X,arch=x86_64" \
-archivePath "$BUILD_DIR/mailcore2.macOS.xcarchive" \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES
有任何想法吗?