Мой Makefile содержит чистое правило, но по какой-то причине оно всегда терпит неудачу, даже если выполнение команды само по себе всегда успешно.Что может быть причиной этого?
make clean
del /f *.o *.hex *.elf *.map
make: *** [clean] Error 1
Редактировать: Вот весь make-файл:
MCU = atmega324p
AVRDUDE_DEVICE = m324p -F
PORT = \\\\.\USBSER000
CFLAGS=-g -Wall -mcall-prologues -mmcu=$(MCU) -Os
CC=avr-gcc
OBJCOPY=avr-objcopy
OBJDUMP=avr-objdump
LDFLAGS=
TARGET=led_strip
all: $(TARGET).hex
%.hex: %.elf
$(OBJCOPY) -R .eeprom -O ihex $< $@
%.elf: %.o
$(CC) $(CFLAGS) $^ $(LDFLAGS) -o $@
program: $(TARGET).hex
bootloadHID.exe -r $<
clean:
del /f *.o *.hex *.elf *.map
Тем временем я понял, что WinAVR очень грубо переписалмоя переменная PATH, когда я ее установил.Я пошел и добавил MinGW обратно в мою PATH и удалил утилиту / папку WinAVR, которая содержала такие команды, как sh.exe, и это, похоже, устранило проблему.Я все еще хотел бы понять, что именно вызвало проблему, хотя.