Во-первых, я использую XCode 4.0.2.
Хорошо, вот моя проблема. Я могу собрать пример программы Apple для MFMailComposerViewController и запустить ее в симуляторе (я знаю, что она не будет отправлять электронную почту, я просто обеспокоен тем, что она собирается). Кажется, это работает нормально.
ОДНАКО, когда я пытаюсь встроить свое приложение, я получаю следующее сообщение.
ld: warning: ignoring file /Users/lloyd/Projects/iOS/simpleApp/MessageUI.framework/MessageUI,
missing required architecture i386 in file
Undefined symbols for architecture i386: "_OBJC_CLASS_$_MFMailComposeViewController", referenced from:
objc-class-ref in MailData.o
ld: symbol(s) not found for architecture i386
collect2: ld returned 1 exit status
РЕШЕНИЕ
Просматривая «Настройки сборки» (базовые и комбинированные), я увидел, что у меня установлен «Путь поиска рамок». Это было странно, потому что я никогда не вспоминал, как настраивал это. Удаление исправило проблему.
Теперь я могу строить как для симулятора, так и для цели. ПРИМЕЧАНИЕ. Вы НЕ МОЖЕТЕ отправить электронное письмо с симулятора, но вы все равно сможете запустить код (если это имеет смысл).