У меня есть приложение C, работающее на встроенном ARM M4; работает правильно.
Я использую Kinetis Design Studio, которая использует gdb
, в качестве моего отладчика в Windows.
Для большинства моих .obj
я могу пошагово использовать источник C. Однако для некоторых файлов, хотя я могу использовать точки останова, одноступенчатый источник C не работает: нажатие Single-step
заставляет отладчик работать так, как будто я нажал Run
, но приложение определенно не работает.
Но пошаговая сборка, те же файлы .obj
, работает правильно.
Я использую одинаковые параметры компиляции для всех .c
-x c -Wall -Werror -std=c99 -nostdlib -mthumb -mtune=cortex-m4 -mlittle-endian -Wdouble-promotion -DNDEBUG -fdata-sections -ffunction-sections -c -save-temps=obj -g3 -gdwarf-2
ВОПРОС
Для некоторых .obj
, почему точки останова и одношаговая сборка работают, а не исходный одношаговый?