Forum: Compiler & IDEs Buchempfehlung GCC, Makefile & Co


von Zero V. (Firma: Freelancer) (gnd)


Lesenswert?

Hallo Experten,

ich bin auf der Suche nach Büchern zu den Themen GCC, Makefile und 
Linkerskripten! Dabei interessiere ich mich vor allem für die praktische 
Anwendung im Bereich Mikrocontroller, Unix mit C und C++.

Ich möchte Makefiles und Linkerskripte schreiben und verstehen können.
Zudem möchte ich alle wichtigen gcc Flags und Möglichkeiten 
kennenlernen.

Über Eure Buchvorschläge oder Online-Tutorials würde ich mich sehr 
freuen.


ps: Woher habt ihr euer Wissen ?

von Johann L. (gjlayde) Benutzerseite


Lesenswert?

James Bonddraht schrieb:
> Hallo Experten,
>
> ich bin auf der Suche nach Büchern zu den Themen GCC, Makefile und
> Linkerskripten! Dabei interessiere ich mich vor allem für die praktische
> Anwendung im Bereich Mikrocontroller, Unix mit C und C++.
>
> Ich möchte Makefiles und Linkerskripte schreiben und verstehen können.
> Zudem möchte ich alle wichtigen gcc Flags und Möglichkeiten
> kennenlernen.

Die erste Referenz ist natürlich immer die Dokumentation der jeweiligen 
Software selbst.  Bücher find ich da nicht so prickelnd, weil dien 
Autoren i.d.R die Software nicht selber (mit)entwickelt haben und sich 
beim Schreiben der Bücher auf die Doku der jeweiligen Software 
zurückgeworfen sind.  Sieht dann zwar etwas hübscher aus im Buch, aber 
das war es dann auch...

Zudem wird GCC ständig weiterentwickelt.  Wenn du in einem GCC-Buch was 
suchst zu "Transactional Memory in GCC" wirst wohl nicht viel finden, 
weil ein Buch zu langsam ist und schwerlich mithalten kann mit der 
Entwicklung.

> ps: Woher habt ihr euer Wissen ?

1) Doku lesen. Oft reicht ein Überfliegen, so dass man im entscheidenden 
Moment weiß "da gibt's doch was von..." und dann kann man dort 
nachschauen.  Allerdings sollte für dieses Überfliegen auch genügend 
Zeit eingeplant werden.  Die GCC-Doku z.B. ist recht fett, und man kann 
locker 1 Tag mit dem Überfliegen zubringen -- manchmal liest man 
Interessantes ja auch ausgiebiger oder hängt an schwer verständlichen 
Stellen oder will was konkretes ausprobieren.

2) Learning by Doing.  Was nicht heißt blind rumzuprobieren oder zu 
clicken.  Gerade komplexe Software ich nicht immer intuitiv.  Wenn man 
z.B. die die Idee von make begriffen hat und denkt es ist eine 
Skriptsprache, sind Missverständnisse und Ärger und Frust 
vorprogrammiert.

3) Mitarbeit (bei mir nur GCC, dort avr Backend)  Ein Blick unter die 
Haube ist auch beim Anwenden der Software durchaus hilfreich.

4) Für Fragen, die ins Eingemachte gehen, Mailinglisten wie 
gcc-help@gcc.gnu.org [1].  Hier sind die entsprechenden Regeln und die 
Netiquette zu beachten, dafür bekommt man Antworten von den Entwicklern 
der Software selbst.  Ausserdem ist zu beachen: Diese Mailinglisten sind 
nicht für Fragen zu C oder C++ etc. sondern für Fragen zu GCC (Schalter, 
Optimierungen, Probleme mit configure, ...)

[1] http://gcc.gnu.org/ml

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.