状況
MacでFlutterの新規プロジェクトを作成し、iOSシミュレータで実行しようとしたところ以下のエラーが発生しました。
Failed to build iOS app
Error (Xcode): Target debug_unpack_ios failed: Exception: Failed to codesign /Users/(中略)/build/ios/Debug-iphonesimulator/Flutter.framework/Flutter with identity -.
Could not build the application for the simulator.
Error launching application on iPhone 15 Pro.
Exited (1).
環境
- macOS Sonoma 14.2.1
- Flutter 3.16.9
原因と対策
プロジェクトを「書類」ディレクトリに作成しており「書類」をiCloud同期する設定にしていることが原因でした。同期設定したディレクトリはビルド用ディレクトリとして適さないようです。
対処法1
プロジェクトディレクトリを「デスクトップ」「書類」以外のローカルな場所に作成します。
対処法2
システム設定アプリ→自分の名前(Apple ID)→iCloud→iCloudドライブ→"デスクトップ"フォルダと"書類"フォルダをオフにします。
補足
一般的に開発用ディレクトリはホームディレクトリ直下などに作成することが多いと思います。
クラウドストレージやネットワーク上のディスクは、日本語のディレクトリ/ファイル名などと同様意図しない不具合が発生することがあるので避けるのが無難です。
今回はバックアップの目的も兼ねてあえてiCloud同期の「書類」フォルダを使ってみましたがやはり良くないようです。(ビルドディレクトリのように頻繁に書き換わるデータを置くことにそもそも無理がありそうですが)
開発ディレクトリはローカルに置いて、バックアップはTime MachineやGit等他の手段を組み合わせて行いましょう。