Если вас беспокоит использование -g в двоичном файле, который вы загружаете на устройство, вы можете использовать gdbserver на устройстве ARM с удаленной версией исполняемого файла и запустить arm-gdb на своей машине разработки с несвязанная версия исполняемого файла. Для этого необходимо, чтобы урезанная версия и урезанная версия соответствовали друг другу, поэтому сделайте следующее:
# You may add your own optimization flags
arm-gcc -g program.c -o program.debug
arm-strip --strip-debug program.debug -o program
# or
arm-strip --strip-unneeded program.debug -o program
Вам нужно прочитать документацию по gdb и gdbserver, чтобы понять, как их использовать. Это не так сложно, но не так хорошо, как могло бы быть. В основном, очень просто случайно сказать GDB сделать что-то, что он в конечном итоге думает, что вы должны делать локально, так что он переключится из режима удаленной отладки.