Forum: Compiler & IDEs Zwei Fragen zu "make"


von Achim (Gast)


Angehängte Dateien:

Lesenswert?

Obwohl im "makefile" der Name des Targets (siehe Anhang) steht, lautet 
die Ausgabe von "make":
1
AVR Memory Usage
2
----------------
3
Device: Unknown
4
5
Program:    1994 bytes
6
(.text + .data + .bootloader)
7
8
Data:         93 bytes
9
(.data + .bss + .noinit)

Woran liegt das?

Wie kann ich mir die Anzahl der Warnings und Errors ausgeben lassen, 
bzw., dass die Übersetzung fehlerfrei war?

von g457 (Gast)


Lesenswert?

> Woran liegt das?

Irgendjemand(tm) ruft avr-size auf ohne im zu sagen, was für eine mcu es 
ist. Im hier geposteten makefile ist jedoch kein solcher Aufruf 
vorhanden.

von Achim (Gast)


Lesenswert?

Meine Schuld. "make" und "avr-size" werden von einer Batchdatei 
aufgerufen.
1
 
2
make
3
avr-size -C webserver.elf
4
pause

von Schaulus Tiger (Gast)


Lesenswert?

das uralte Prinzip lautet: "keine Nachrichten sind gute Nachrichten".
Fehlermeldungen wirst du noch reichlich zu sehen bekommen ;)

von Achim (Gast)


Lesenswert?

Die erste Frage konnte ich klären. Der Name des Controllers muss extra 
mit angegeben werden. Zum Beispiel:

avr-size -C webserver.elf --mcu=attiny2313

Kann jemand etwas zur zweiten Frage beisteuern?

von g457 (Gast)


Lesenswert?

> Zum Beispiel:

..kannst auch direkt im makefile erledigen lassen, z.B. im target 
'$(PRG).elf' nach dem Aufruf von '$(CC)', SIZE und MCU_TARGET gibts ja 
schon.

> Kann jemand etwas zur zweiten Frage beisteuern?

Normalerweise purzeln die automatisch auf die Konsole wenn jemand 
meckert. Probiers einfach mal aus und bau absichtlich Code ein, der 
Warnings und Errors generiert. Kannst dann auch gleich noch die 
Kommandozeilenparameter -Wextra, -Wpedantic und -Werror zu den CFLAGS 
dazupacken wenn Du öferts was sehen willst ;-)

von Achim (Gast)


Lesenswert?

@ g457

Danke :)

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.