Xcode 4.3 и отладка на устройствах iOS 3.x

Я только что обновил Xcode до версии 4.3 через Mac App Store на прошлой неделе и обнаружил, что больше не могу отлаживать устройства iOS 3.x. У меня iPhone 3G, работающий под управлением iOS 3.1.3, и iPad первого поколения, работающий под iOS 3.2.

На обоих устройствах появляется, что Xcode 4.3 устанавливает приложение и пытается запустить приложение. Приложение отображает заставку, но никогда не завершает загрузку. В окне вывода отладчика нет сообщений об ошибках или сообщений. Моя единственная подсказка - когда я нажимаю кнопку паузы, я вижу, что устройство /Xcode застревает в следующей функции: addimagesToAllImages, которая, как представляется, связана с Apple DYLD.

Отладка отлично работает на устройствах iOS 5 и работает на предыдущей установке Xcode 4.2. Я перезагрузил свои Mac, iOS 3.x устройства без изменений в поведении, включая очистку всех кеш файлов.

У кого-нибудь есть идеи относительно того, что происходит? Спасибо за помощь.

Ответ 1

Хорошо, я понял это с помощью младшего B-подсказки об отладчике. Я пошел в "Управление схемами" и выбрал схему, над которой я работаю, и нажал "Изменить". В разделе "Выполнить" я сменил Debugger с LLVM на GDB. Теперь отладка на устройствах iOS 3.x и 5.x работает нормально. Кроме того, я оставил компилятор в xcode предпочтительной настройке LLVM 3.1.

Надеюсь, это поможет кому-то другому, который согласен с рекомендуемыми рекомендациями по обновлению xcode и их отладками отладки iOS 3.x.

Ответ 2

Установлен ли компонент "Поддержка отладки устройств iOS 3.0 - 3.2.2"?

В строке меню выберите "Xcode" > "Настройки"..., затем в окне "Настройки" выберите "Загрузки" > "Компоненты". Найдите строку поддержки iOS 3.0 и нажмите кнопку "Установить".

Ответ 3

Только переключение с LLDB на GDB было недостаточным для меня при столкновении с той же проблемой. Поскольку у меня была более старая рабочая фиксация в git, я выяснил, какие изменения в настройке проекта Xcode позволяют в моем случае к ошибке. Таким образом, я мог решить проблему, удалив все вхождения следующей строки из моего $PROJECT.xcodeproj/project.pbxproj

GCC_THUMB_SUPPORT = NO;

Кроме того, я вернул значение из

LastUpgradeCheck = 0430;

назад к

LastUpgradeCheck = 0420;

Поскольку мои схемы настроены как "Shared", эти параметры также сохраняются в каталоге проекта (subdir. "xcshareddata" в каталоге проекта .xcodeproj), и, следовательно, изменения также видны в git. Другое изменение, которое я вернул, заключалось в удалении этих двух строк в '$ PROJECT.xcodeproj/xcshareddata/xcschemes/$PROJECT.xcscheme':

LastUpgradeVersion = "0430"
ignoresPersistentStateOnLaunch = "NO"

Другим изменением в файле .xcsheme было то, что значения 'selectedDebuggerIdentifier' и 'selectedLauncherIdentifier' закончились с '.GDB' вместо '.LLDB', но это на самом деле то же самое, что вы получите, следуя принятому ответу от Уэсли.

Эти изменения решили для меня проблему, и я мог снова отлаживать мой iPhone Classic, работающий на iOS 3.1.3.

Тем не менее, я настоятельно рекомендую использовать систему управления версиями, например Git (или, по крайней мере, локальную резервную копию!), прежде чем применять эти изменения в своем любимом текстовом редакторе.

Ответ 4

Друзья Hai MyDear,

   I am having one simple solution as follows:

"Xcode → Настройки → Отладчик → установите флажок Автоматическая очистка консоли отладки" результаты стирают консоль каждый раз, когда вы запускаете приложение