Xcode 4.3 и отладка на устройствах iOS 3.x - PullRequest
10 голосов
/ 20 февраля 2012

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

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

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

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

Ответы [ 4 ]

13 голосов
/ 20 февраля 2012

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

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

1 голос
/ 20 февраля 2012

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

В строке меню выберите Xcode> Preferences…, затем в окне Preferences выберите «Downloads»> «Components».Найдите строку для поддержки iOS 3.0 и нажмите кнопку Установить.

0 голосов
/ 04 июня 2012

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

GCC_THUMB_SUPPORT = NO;

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

LastUpgradeCheck = 0430;

назадв

LastUpgradeCheck = 0420;

Поскольку мои схемы настроены как «Общие», эти параметры также сохраняются в каталоге проекта (подкаталог «xcshareddata» в каталоге проекта .xcodeproj), и, таким образом, изменения также видныв мерзавцеЕще одно изменение, которое я отменил, было удаление этих двух строк в '$ PROJECT.xcodeproj / xcshareddata / xcschemes / $ PROJECT.xcscheme':

LastUpgradeVersion = "0430"
ignoresPersistentStateOnLaunch = "NO"

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

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

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

0 голосов
/ 22 марта 2012

Hai MyDear Friends,

   I am having one simple solution as follows:

«Xcode -> Preferences -> Debugger -> check Auto clear Debug console» Результаты очищают консоль каждый раз, когда вы запускаете приложение

...