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 → Настройки → Отладчик → установите флажок Автоматическая очистка консоли отладки"
результаты стирают консоль каждый раз, когда вы запускаете приложение