Forum: Mikrocontroller und Digitale Elektronik Map-File mit gcc Compiler


von Michael (Gast)


Lesenswert?

Hallo, besteht die Möglichkeite eine Map-File mit dem gcc Compiler zu 
erstellen??
Wenn ja wie lautet der Befehl dazu??
Vielen Dank

von Stephan Storm (Gast)


Lesenswert?

Hallo,

besser spät als nie:

gcc -o test -Wl,-Map -Wl,test.map test.c

Ade!

von Dirk (Gast)


Lesenswert?

Hi,
ich habe das gerade mal unter Code::Blocks versucht aber bekomme das 
nicht hin.
Versuche das unter Windows mit dem mingw32.
Die Option Map wird da nicht zun an-harken angeboten und wenn ich es 
einfüge bekomme ich immer die Meldung "-MAP" ist unbekannt.

von Stephan Storm (Gast)


Lesenswert?

Ok, jetzt sieht die Sache anders aus. Also wie du siehst, ist es für den 
GCC kein Problem. Wie das mit Code::Blocks geht weiß ich nicht, da ich 
damit noch nie gearbeitet habe. Das ist meiner Meinung nach auch nicht 
nötig.

Schmeiß die Code::Blocks Scheiße weg und mach's mit der Kommandozeile. 
Vorteil: Man lernt viel mehr in Bezug auf den Compiliervorgang. Ist zwar 
am Anfang mühsam, zahlt sich aber am Ende aus!

Trotzdem: Code::Blocks arbeitet auch mit einem Makefile. Such mal in den 
Optionen ob du den Makefile "von Hand" anpassen kannst. Wenn du was 
findest melde dich nochmal.

Viel Glück
Stephan

von Dirk (Gast)


Lesenswert?

Hi.
Also C::B würde ich nicht weg werfen, da zu ist der einfach zu gut.
Hat zwar einige Macken (zB. #ifdef #else #endif wird nicht aufgelösst) 
und die Entwickler sind anscheinend nicht willig die mal zu beheben.
Musste deswegen für meine AVR Projekte auf NetBeans / Eclipse 
ausweichen.

Aber zurück zum Thema.
Man kann weitere Optionen angeben. Da hatte ich auch -Map eingetragen 
und die Meldung bekommen.

von Dirk (Gast)


Lesenswert?

Bevor ich es vergesse:
Makefiles kenne ich und ich kann damit auch umgehen.
Nur warum die extra Arbeit, wenn die IDE das alles kann.

von Bernhard M. (boregard)


Lesenswert?

Hi,

die option ist doch nur für den Linker, also ist die ganze option für 
den Compiler wirklich:
-Wl,-MAP
und nicht nur -MAP...

von Dirk (Gast)


Lesenswert?

Ich finde es nicht, gebe jetzt auch auf, habe keine Zeit mehr.
Einfach als zusätzliche Parameter geht nicht. Es gibt aber noch die 
Möglichkeit die Compiler / Linker aufrufe zu verändern.
Ich schaue mir das später nochmal an. Irgendwie  muss das ja 
einzustellen sein.
Danke Dirk

von Gerald KK (Gast)


Lesenswert?

Damit am Ende für zufällig vorbei kommende Leser noch was Verwertbares 
steht:

In den "Build Options" > "Linker Settings" > "Other Linker Options" 
einfach in eine Zeile des Fensters schreiben:

-Map ${PROJECT_DIR}${TARGET_OUTPUT_FILE}.MAP

Toolchain = Aktuelle GNU ARM, Code Sourcery.


P.S.:
C::B ist meiner Ansicht nach schon brauchbar und sehr hilfreich, aber zu 
verstehen, was im Hintergrund passiert, ist natürlich wichtig.

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.