newlib-nano gcc-arm

OP #3334757
Lesenswert?
• ▲
▼
Hallo,

ich nutze die gcc-arm-embedded-Toolchain in Eclipse um Programme für 
Mikrocontroller zu erstellen.

Leider musste ich feststellen, dass der erzeugte Code doch um ein 
vielfaches größer ist, als bei anderen Entwicklungsumgebungen.

Kann es sein, dass es an der newlib liegt und ich die newlib-nano 
(nano.specs) nutzen sollte?

Wenn ja, wie kann ich diese Lib einbinden, bzw. darauf verlinken?

Danke schon mal im Voraus!
OP #3336070
Lesenswert?
• ▲
▼
Danke für den Hinweis, habe die Lib jetzt eingebunden, allerdings ist 
der Code immer noch etwa doppelt so groß als z.B. bei uVision von Keil 
(mit MicroLib)...

Gibt es da noch Stellen an denen man "drehen" kann oder liefert die 
newlib-nano einfach kein besseres Ergebnis?

Für weitere Infos/Erfahrungsberichte wäre ich sehr dankbar!
Gast #3346375
Lesenswert?
• ▲
▼
über welche Codegröße reden wir denn?

Bei kleinen Codegrößen kann leicht ein permanenter Overhead fatal in den 
Vergleich einfliessen.

Ich optimiere auf Speed nicht auf Größe. Solange der Code in den 
internen Speicher passt ... ;-)

-finline-functions - tut eher Code vergrößern, da Code ge-inlined wird

Die Compileroption "-ffunction-sections -fdata-sections" und die Linker 
Option "-Wl,--gc-sections" werfen nicht benutzten Code/Variablen aus dem 
Output heraus.

Adib.
--

Antwort schreiben

Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt. Bitte hier nur auf die ursprüngliche Frage antworten, für neue Fragen einen neuen Beitrag erstellen.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.