iPhone/iPod Touch: application executables is missing と言われた時の対応方法

久しぶりに iPhone アプリを App Store にアップしようとしたら大幅にやり方が変わってて戸惑った。
Organizer から Archives を選択して Validate しようとしたらこんなエラーが。

iPhone/iPod Touch: application executable is missing a required architecture. 
At least one of the following architecture(s) must be present: armv6

ググると objective c - iPhone/iPod Touch: application executable is missing a required architecture - Stack Overflow が見つかるので、そのとおりに対応して解決。

# なんで armv7 だけの状態がデフォルトなんだろう・・・

忘れないようにメモ。環境は MacOS 10.6.8 と Xcode 4.2。

  1. TARGETS の Build Settings を選択して、 Architectures を確認。
  2. 20120119_01.png

  3. 初期状態ではここが armv7 だけになっているので、変更する。
    Standard (armv7) と書いてあるあたりをクリック、 other を選択。
  4. 20120119_06.png

  5. other を選ぶとウインドウが開く。
  6. 20120119_02.png

  7. $(ARCHS_STANDARD_32_BIT) というのを選択した状態で下のマイナスボタンを押して削除。
  8. 20120119_03.png

  9. 消したら、プラスボタンを押して直書きで armv6 と armv7 を追加。
  10. 20120119_04.png

  11. こんな状態にすればOK。
  12. 20120119_05.png

再度 Archive を作りなおして Validate したら、エラーが出なくなった。