この記事はXcode12 beta6でビルドした際に発生したエラーを解消したお話です。
XcodeGenに対応したアプリビルド時に、
Xcode11上では発生していなかったエラーがXcode12 beta6で発生する様になっていました。
error: Cycle inside App; building could produce unreliable results.
Showing Recent Messages
Build system information
error: Cycle inside App; building could produce unreliable results.
Cycle details:
→ Target 'App': CodeSign /Users/hiroya/Library/Developer/Xcode/DerivedData/App-fkcbhdapvfgquoegyvqjcaklmjzp/Build/Products/Debug-iphonesimulator/Example.app/Frameworks/Common.framework
○ That command depends on command in Target 'App': script phase “[CP] Embed Pods Frameworks”
○ Target 'App': CodeSign /Users/hiroya/Library/Developer/Xcode/DerivedData/App-fkcbhdapvfgquoegyvqjcaklmjzp/Build/Products/Debug-iphonesimulator/Example.app/Frameworks/Common.framework
こちらの対処法を残しておきます。
対処方法
case: Build Phase の順番
`[CP] Embed Pods Frameworks` の位置を
`[CP] Check Pods Manifest.lock` のすぐ下に移動。
Build Phases
Dependencies
[CP] Check Pods Manifest.lock
[CP] Embed Pods Frameworks <<< Moved
画像載せようと思ったんですが、NDAに引っかかりそうなので控えました。
この方法だとXcodeGenの管理から外れた操作になってしまい、
チームに共有できないのでこの環境では良くない方法ですね。(XcodeGenを使用してないならこれでもいいかも🤔)
FrameworkのSignを外す
良くみるとFrameworkにCodeSignしようとしている様なので、
XcodeGenのproject.ymlでdependenciesに指定するtargetのcodesignをオフにする。
target: Domain
codeSign: false
embed: true
上記を設定したら、xcodegenを実行して、
アプリのメインターゲットの Frameworks, Libraries and Embeded Content
にリストされるframeworkが全て Embed Without Signing
になってればOKです。
画像載せようと思ったんですが、NDAに引っかかりそうなので控えました。
この方法なら、チーム共有できるので問題なさそうです😌
個人アプリをリリースしました。良ければインストールしてみてください🙏

Scannable - Simply Recognizer
Scannable - Mobile Scanner App. 無料 スキャンアプリ / 書類 スキャン / OCR / 写真 スキャン シンプル操作で画像からテキスト解析! 教科書や手紙、レシートをデジタルデータにして保存できます。 データ化したテキストは編集・共有可能です。 日本語・英語・中国語(簡体字)...