Цитата(ARV @ Oct 11 2008, 13:48)

Заинтересовался Code::Blocks, как альтернативе AVR Studio. Привлекает бесплатность и универсальность. Особенно обрадовался наличию поддержки отладки... однако, с GDB никогда никаких дел не имел, вообще смутно представляю, как можно отлаживать в консольном режиме... Судя по всему, Code::Blocks обеспечивает GUI для GDB, однако, не смотря на то, что компиляция происходит, отладка не получается - выводится месседж типа "неизвестно, что отлаживать" - и отладчик завершает работу.
Я делаю так:
Создаю два скриптика - один заливает прогу во флэш и проверяет как записалось + GDB стартует:
avarice -j /dev/ttyUSB0 -e -f ./hex/ig.elf.hex -P atmega16 -p -v :4242
второй просто проверяет что то что во флэше то что нужно и запускает GDB сервер (чтобы флэш не марать если программа не изменилась):
avarice -j /dev/ttyUSB0 -f ./hex/ig.elf.hex -P atmega16 -v :4242
Далее в среде CodeBlocks меню Project-Properties-Debugger-Remote debugging support (GDB only) пишу для каждой target
Connection type: TCP
IP address: 127.0.0.1 - так как на этом же компьютере и запускаю отладку
Port: 4242 - потому что в своих скриптиках я указал чтобы GDB сервер висел именно на этом порте (:4242)
Сначала запускаю один из скриптов и вижу что GDB ожидает соединение. Затем запускаю в CodeBlocks Debug-Start и понеслась

В итоге получается удобная отладка прямо в тексте программы, происходящая непосредственно в среде CodeBlocks, которая мало чем отличается от отладки программы для windows/Linux. Всё что я описал я пробовал под Linux, как под маздай не знаю, но по идее должно работать и там...
Мой программатор USB-JTAG-ICE, поэтому я воспользовался программой avarice - она поддерживает много программаторов под разными ОС. Если программатор другой - достаточно запустить avarice --help и найти какие ключи подавать чтобы работать с конкретным программатором-отладчиком...
Если будут вопросы - пиши.