itok's Lab

昔の開発ネタを記録として残してます

iPhone SDK on PPC で配布用ビルドを行う

先日の「iPhone SDK on PPC でデバイス用ビルドを行う」と同じようにやっても、ビルドは出来るものの AppStore には登録できません。いろいろ調べてみたところ、結論としては、先日の参照リンクでも議論されていた件と同じことのようです。

PPCでビルドするために/usr/bin/codesignスクリプトで置き換えるわけですが、その時、スクリプトの中で以下のような操作を行っているところがあります。

rm Application.app/CodeResources
cp Application.app/_CodeSignature/CodeResources Application.app/CodeResources

これはこれで、普段のデバイス用ビルドではうまく行くのですが、AppStore からは受け付けてもらえません。どうしたらよいかというと、本来の形のように、シンボリックリンクにする必要があります。つまりこう。

rm Application.app/CodeResources
ln -sf Application.app/_CodeSignature/CodeResources Application.app/CodeResources

これで AppStore にアップロードできるようになりました。

が、AdHoc なバイナリを作ろうとすると、同じようにはいかず、今度は先述のコピーのままでうまくいくようです。この辺りがなんだかややこしいことになっていますが、普段は先日のスクリプト(コピー版)を使用して、AppStore に上げる時だけシンボリックリンクに書き換える、というのがとりあえずは妥当な作業ではないかと。

まあ、ちょっと一手間かかりますが、非推奨環境ですから、、、ね。というか、いわゆるクロス開発なのにホストアーキテクチャによる差違がこの程度で済むならいいんじゃないでしょうか、とも。