Проект XCode iOS работает под 10.6, вылетает под 10.7 - PullRequest
1 голос
/ 16 ноября 2011

У меня есть проект iOS XCode, над которым я работал в течение 10.6 в течение некоторого времени.В 10.6.8, Xcode 4.2, он прекрасно собирается и работает как в симуляторе, так и на устройстве.

Затем я попытался переместить его на 10.7-машину, работающую под управлением Lion версии XCode 4.2, сжав весь архивпапку проекта (включая все используемые им ресурсы), скопируйте ее на компьютер 10.7 и разархивируйте ее.Когда я запускаю проект под 10.7 на устройстве, он также работает.ОДНАКО, если я пытаюсь запустить проект под симулятором iOS, он теперь падает при первоначальном вызове UIApplicationMain с SIGABRT.Все, что я вижу об ошибке (по крайней мере, где я смотрю), говорит: «Приложение получено SIGABRT», без указания причины.Это находится в основной функции до того, как любой написанный мной код будет выполнен (проверен с точками останова).

Я проверил и дважды проверил, что все файлы, которые ищет проект XCode, существуют и имеют надлежащие разрешения.Новые проекты, созданные с идентичными настройками (насколько я могу судить) для моего текущего проекта, работают в симуляторе нормально.Как уже упоминалось, даже мой проект работает нормально при запуске на устройстве iOS.Проблемы возникают только тогда, когда я пытаюсь запустить свой проект в симуляторе iOS.Кто-нибудь знает, как я могу это исправить, кроме создания нового проекта и копирования всего моего кода в?

1 Ответ

0 голосов
/ 16 ноября 2011

Я могу представить две возможности:

Xcode генерирует производные данные (индексные файлы, промежуточные продукты сборки и т. Д.).Обычно эти данные хранятся в папке библиотеки пользователя, но настройки проекта могут указывать Xcode хранить эти данные в любом месте, в том числе в каталоге проекта.Если вы перенесли это производное с вашим проектом, и это зависело от чего-либо в вашей системе 10.6, возможно, он создает исполняемый файл, который не будет работать на вашем Mac.Попробуйте удалить эти производные данные.Вы можете использовать вкладку проектов в Xcode Organizer, чтобы удалить ее, или просто покопаться в ней с помощью Finder и удалить папки.

Другая возможность состоит в том, что схема, созданная для этого проекта, может пытаться запуститьприложение на версии симулятора iOS, не установленной на новом Mac.Попробуйте создать новую схему на новом Mac.XCode должен создать новую схему с настройками по умолчанию, которые соответствуют этой конфигурации XCode.

...