Поясните, что я делаю (или понимаю) неправильно. Компилирую и линкую проект следующим образом:
Код
del *.elf
del *.bin
del *.hex
del *.obj
del *.map
del *.o
del *.lst
del *.eep
avr-gcc -g -Os -mmcu=atmega8 -c lib\utils.c
avr-gcc -g -Os -mmcu=atmega8 -c lib\uart.c
avr-gcc -g -Os -mmcu=atmega8 -c main.c
avr-gcc -g -mmcu=atmega8 -o main.elf main.o uart.o utils.o
avr-objcopy -O ihex main.elf main.hex
Если в каком-то из файлов, например в utils.h, есть функция, которая
нигде не вызывается, то все равно, она линкуется в прошивку. Как сделать, что бы скомпилирован и слинкован был только тот код, который действительно будет выполняться?