Probleme bei Makefile für ATmega

Gast #6690291
Lesenswert?

mahlzeit,
ich habe mir von 
https://www.mikrocontroller.net/articles/Beispiel_Makefile die Makefile 
genommen und auf mein Projekt angepasst.
in der runtergeladenen Makefile war anstelle von F_CPU F_OSC 
eingetragen. Dies habe ich wieder abgeändert. Desweiteren habe ich noch 
den Pfad für AVRDude angepasst. Ich benutze avr-gcc 5.3.0 von SysGCC.

folgende sachen funktionieren nicht
1
all: begin gccversion sizebefore build sizeafter finished end
2

3
HEXSIZE = $(SIZE) --target=$(FORMAT) $(TARGET).hex
4
ELFSIZE = $(SIZE) -A $(TARGET).elf
5
sizebefore:
6
  @if [ -f $(TARGET).hex ]; then echo; echo $(MSG_SIZE_BEFORE); $(HEXSIZE); echo; fi
7

8
sizeafter:
9
  @if [ -f $(TARGET).hex ]; then echo; echo $(MSG_SIZE_AFTER); $(HEXSIZE); echo; fi

sizebefore und sizefinished werden nicht ausgeführt. Diese kann ich auch 
rausnehmen, wollte sie aber interessehalber mal drinn haben.
zunächst bekomme ich den Fehler

"-f" kann syntaktisch an dieser Stelle nicht verarbeitet werden.

wenn ich das -f entferne, bekomme ich die Fehlermeldung

"main.hex" kann syntaktisch an dieser Stelle nicht verarbeitet werden.

nehme ich diese zwei Befehle raus, baut alles durch.


Ein weiteres Problem habe ich beim clean
1
# Target: clean project.
2
clean: begin clean_list finished end
3

4
clean_list :
5
  @echo.
6
  @echo $(MSG_CLEANING)
7
  $(REMOVE) $(TARGET).hex
8
  $(REMOVE) $(TARGET).eep
9
  $(REMOVE) $(TARGET).obj
10
  $(REMOVE) $(TARGET).cof
11
  $(REMOVE) $(TARGET).elf
12
  $(REMOVE) $(TARGET).map
13
  $(REMOVE) $(TARGET).obj
14
  $(REMOVE) $(TARGET).a90
15
  $(REMOVE) $(TARGET).sym
16
  $(REMOVE) $(TARGET).lnk
17
  $(REMOVE) $(TARGET).lss
18
  $(REMOVE) $(OBJ)
19
  $(REMOVE) $(LST)
20
  $(REMOVE) $(SRC:.c=.s)
21
  $(REMOVE) $(SRC:.c=.d)
22
  $(REMOVE) .dep/*

begin, finished und end sind nur echo ausgaben.

wenn ich jetzt allerdings
make clean
in der console eingebe, bekomme ich den Fehler
rm -f main.hex
process_begin: CreateProcess(NULL, rm -f main.hex, ...) failed.
make (e=2): Das System kann die angegebene Datei nicht finden.
make: *** [clean_list] Error 2

die Datei ist aber definitiv da. Warum kann die nicht gelöscht werden?
Gast #6690324
Lesenswert?

Marcel schrieb:
> folgende sachen funktionieren nicht

Bist du dir sicher dass du so anfangen willst und nicht doch
mit einer einfach zu bedienenden IDE arbeitest?

Einfach und leicht zu lernen wäre z.B. AVR Studio 4.18
Schnell downloaden und installieren.

Ein paar Klicks zum Erstellen eines Projekts und Datei-Importe
und schon ist man seinem Ziel wesentlich näher ....

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren