Xcode16にしたらPod initができなかった話
[10/03, 2024] |
最新版ってワクワクしますよね!こんにちは、トモです。先日Xcode16にアップデートしたらPod initした際にエラーが出てしまうことがわかりました。
先に結論
- 結論としては、Xcode15をダウンロード
- Xcode15でプロジェクト作成
- Pod initする
- Xcode16でプロジェクトを開いて再開する
結論に足るまでの経緯
- 現時点でCocoaPodsはXcode16(正確にはFolder形式での管理)に対応していない
- CocoaPodsのGithubで上がっていた回避策でPod initはできた
- しかし、provisioning profileがないというエラーで実機転送できなかった
- Xcode15をダウンロード
- しかしMacOS SequoiaではXcode15がサポート対象外で起動できない
- コマンドラインからXcode15を起動
- Xcode15でプロジェクトを作成
- Pod initをする
- Xcode16でプロジェクトを進める(完了!)
現時点でCocoaPodsはXcode16(正確にはFolder形式での管理)に対応していない
現時点でCocoaPodsはXcode16に対応していないようです。Githubではissueが立っており回避策が提案されていました。
Githubに上がっていた回避策
Githubでは
- 「xcodeproj」ファイルをテキストエディタで開いて改変する
- minimizedProjectReferenceProxies = 1; を削除
- preferredProjectObjectVersion = 77; を削除
- objectVersion = 77; を objectVersion = 56; に変更する
- 「Convert to Group」で全てのFolderをGroupにする
という方法が紹介されていました。
実際その方法で、Pod initが成功しました。
しかし、編集方法がまずかったのかまだ他の人が気づいていないのか、上記方法で作成したプロジェクトを実機で動かそうとした際に
Please ensure entitlements claimed by the app are present in the provisioning profile. If this issue persists, please attach an IPA of your app when sending a report to Apple.
というエラーが出てしまい実機転送できませんでした。
「provisioning profile」プロビジョニングファイルは別に古くな句なぜこのエラーが出ているのか突き止めることができませんでした。
Folderとは
Xcode16ではデフォルトの設定で管理方法が「Group」から「Folder」に変更されました。
自分もあまり詳しくないのですが、
- Group : 「xcodeproj」のファイル内にビルドすべきファイル1つ1つが全て記載される
- Folder : 「xcodeproj」にビルドすべきフォルダのPathが記載されている
これにより複数人で作業した際に「xcodeproj」のコンフリクトが減るとか減らないとか?
そもそも「Group:参照」「Folder:実態」と、捉えていたのですが違ったようです。
Xcode15をダウンロードしたがSequoia非対応だった
しょうがないので、Xcode15を使ってPod initまでしてから作業をしようと古いXcodeをダウンロードすることにしました。
古いXcodeはここからダウンロードできます。
ダウンロードしていざ起動しようとしたら
このMacにインストールされているバージョンのXcodeはmacOS Sequoiaと互換性がありません。
と起動できませんでした。
「えー手詰まり。。。」と思ったのですが、この記事にコマンドラインから起動する方法が載っていました。
自分の場合は、Download直下に解答したままなのでこんな感じです。
open /Downloads/Xcode.app/Contents/MacOS/Xcode
open /アプリまでのパス/Xcode.app/Contents/MacOS/Xcode
コマンドラインからの場合無事起動できました。が、
起動しても以下の通り🚫マークがついている徹底振り(流石Apple笑)
どうやって判断してるのでしょうか?というか、マークを出せるけどちゃんと動いている。。。どうなってやがるw
しかしこれで新規プロジェクトを作成し、Pod init(& update)をすることができました。
ちなみに、1度プロジェクトを作ってしまえば、Xcode16でもPod install/updateをすることができます。
はやくCocoapodsがXcode16に対応して欲しいですな。
めでたしめでたし。