Xcodegenを使用したプロジェクトで、arm64アーキテクチャでビルドしようとしたら以下のようなエラーになった。
The linked framework 'Pods_[アプリ名].framework' is missing one or more architectures required by this target: arm64.
調べてみたところ、Build Settings > Architectures > Excluded Architecture
で、Any iOS Simulator SDKを選び、arm64を追加すれば直るとのこと。しかし、Xcodegenを使ってプロジェクトファイルを生成していたので、project.ymlでの書き方がわからず少しハマった。
以下のように、ターゲットのsettingsに対して、EXCLUDED_ARCHS[sdk=iphonesimulator*]: arm64
としたら、うまく生成できたのでそのメモ。
project.yml
targets:
YourApp:
type: application
platform: iOS
sources:
- path: YourApp
settings:
base:
EXCLUDED_ARCHS[sdk=iphonesimulator*]: arm64
参考
https://stackoverflow.com/questions/63607158/xcode-12-building-for-ios-simulator-but-linking-in-object-file-built-for-ios
https://medium.com/@khushwanttanwar/xcode-12-compilation-errors-while-running-with-ios-14-simulators-5731c91326e9