Я не думаю, что 8C148a является "окончательным"; номера окончательных сборок никогда не заканчиваются буквой (мой телефон сообщает «4.2.1 (8C148)»). Я еще не отлаживал приложения на нем (мне стало скучно ждать, пока он извлечет символы, и пошел домой).
4.2 GM был 8C134, так что вы, конечно, используете более новое программное обеспечение, но что-то где-то неправильно набирает номер сборки.
Но я отвлекся.
Какие каталоги находятся в /Developer/Platforms/iPhoneOS.platform/DeviceSupport? Если «4.2.1 (8C148a)» не существует, но существует «4.2.1», возможно, вам повезет, если вы сделаете что-то подобное в Терминале:
cd /Developer/Platforms/iPhoneOS.platform/DeviceSupport
ln -s "4.2.1" "4.2.1 (8C134a)"
Эквивалентно, если существует «4.2.1 (8C148)», вместо этого выполните что-то подобное:
ln -s "4.2.1 (8C148)" "4.2.1 (8C148a)"
Обычно вы можете использовать эту уловку, чтобы заставить Xcode общаться с бета-устройством без установки бета-версии SDK; это полезно, если в вашей компании есть некоторые люди, которые запускают бета-версию (для целей тестирования), а другие - в последней "финальной версии" (для целей выпуска).