gpt4 book ai didi

xcodebuild(来自 Xcode12)- 防止为 Apple Silicon (arm64) 构建

转载 作者:行者123 更新时间:2023-12-05 03:49:34 24 4
gpt4 key购买 nike

使用 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

有什么想法吗?

最佳答案

好吧,通过对 xcodebuild 手册页的更多搜索和大量实验,似乎直接设置 -arch 参数并省略 -destination 参数完成它:

xcodebuild archive -scheme "mailcore osx" \
-arch "x86_64" \
-archivePath "$BUILD_DIR/mailcore2.macOS.xcarchive" \
SKIP_INSTALL=NO \
BUILD_LIBRARY_FOR_DISTRIBUTION=YES

关于xcodebuild(来自 Xcode12)- 防止为 Apple Silicon (arm64) 构建,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63924810/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com