Xcode 4.2にして以来?、iTunes ConnectにSubmit時にarmv6用のバイナリも
含める必要があるよ!と怒られることがある。
"At least one of the following architecture(s) must be present: armv6"みたいな感じのエラーがiTunes ConnectへのSubmit時に出る。
デバッグ用の実機検証のときも、この設定をしないと転送後すぐにRunning Finishedとか
出て実機できないことがある(iPhone 3Gとかの場合)。このときはこの設定を疑うようにするというメモ。
1.BUILD SETTINGのArchitecturesの部分に$(ARCHS_STANDARD_32_BIT)だけが設定されていることが原因。この項目をクリックして「Other...」を選択
「+」をクリックして"armv6"を入力して"armv6"と"$(ARCHS_STANDARD_32_BIT)"の2行が設定されている状態にする
2.その下にある"Build Active Architectures Only"とかいてあるところが
"No"になっていることを確認する。
これで上記のArchitectures両方(つまりarmv6とarmv7)用の
バイナリが生成されるようになります。
(補記)
Xcode 4.2で生成されるプロジェクトには、Info.plistの"Required device capabilities"に
"armv7"と入っているみたい(つまりarmv6を利用したiPhone 3Gは除外されている)。
iPhone 3Gなどのarmv6デバイスも対象とするには、上記に加えてこの設定を除外する必要があるようです。