Подтвердить что ты не робот

XCode Debugger: Почему это только показывает мне ассемблер?

Я только начинаю с разработки Cocoa в xcode, делая пример hello world. Я перейду к шагу 6 раздела " отладка времени выполнения", которая

Используя кнопку "Шаг за шагом" на панели инструментов отладчика, начните выполнять код. По мере выполнения каждой строки кода вы можете проверить состояние программ. Значение переменной иногда рисуется красным цветом, чтобы указать, что значение было изменено на последнем шаге. Обратите внимание, что отладчик приостанавливается до выполнения указанной строки. После каждой паузы вы можете добавить дополнительные точки останова или выбрать Debug > Restart, чтобы завершить работу приложения и начать новый сеанс отладки.

теперь то, что я вытаскиваю за волосы в течение последнего часа, - это тот факт, что этот отладчик будет показывать только код сборки. Я могу вручную выбрать файл исходного кода, но как только я нажму "Step over", я вернусь в ассемблер. Я не могу на всю жизнь понять, как выключить ассемблер и показать ему мой исходный код!

4b9b3361

Ответ 1

Я знаю, что этой статье исполнилось сто лет, но если кто-то задается вопросом, как решить эту проблему в более поздних версиях Xcode (в отличие от Xcode 3), вы найдете соответствующий параметр, обозначенный Always Show Disassembly в разделе Debug > Debug Workflow в Xcode 6 и выше. Убедитесь, что опция НЕ отмечена.

В Xcode 5 опция была отмечена как "Показать разборку при отладке" в Отладкa > Рабочий процесс отладки. Убедитесь, что флажок "Показать демонтаж при отладке" не установлен.

Назад в Xcode 4, параметр "Показать дизассемблирование при отладке" был найден в разделе Продукт > Рабочий процесс отладки. Опять же, убедитесь, что опция не установлена.

Это тоже сводило меня с ума.

ПРИМЕЧАНИЕ. Информация, приведенная выше, по-прежнему действительна для Xcode 9+. Я применил обновления к этому ответу, когда были выпущены новые версии Xcode. К счастью, опция осталась неизменной с Xcode 6 (пока).

Ответ 2

Есть еще две вещи, чтобы убедиться:

  • Что вы смотрите на одну из ваших собственных функций/методов. Если фрейм стека, который вы смотрите, является функцией или методом из одной из фреймворков, вы увидите сборку независимо от того, как вы настроили Xcode.
  • Что вы используете сборку Debug. Разделите символы отладки (как в сборке Release), и вы будете смотреть на сборку даже для своего собственного кода, независимо от того, что.

Ответ 3

Я действительно догадался об этом до того, как отправил сообщение, но я хотел сохранить другие потенциальные будущие головные боли (а также в случае, если я забуду позже), поскольку я не смог найти ответ на этот вопрос, перейдя в переполнение стека, но я обнаружил, что Я не одинок.

В меню прогона выберите "Диспетчер отладки" > "Только источник" или "Дисплей отладчика" > "Источник и разборка"