Moin, ich benutze die newlib-nano. Ist ja eigentlich ein ganz gutes Stück Software, ein guter Kompromiss zwischen Konformität zum Standard und Codegröße, passende für typische (32+ KB Flash) ARM-MCUs. Aber wie schauts mit ganz kleinen Dingern aus, die nur 8-16 KB Flash und sehr wenig RAM haben? Hat sich mal jemand damit beschäftigt, die newlib noch weiter zu entschlacken oder gibt's vielleicht eine frei verfügbare, noch schlankere libc? Keil & co haben ja anscheinend sowas. Ich hab mir jetzt notdürftig damit beholfen, ein Minimal-printf selbst einzubinden. Das ist aber keine tolle Lösung und bringt nix, wenn man andere Funktionen aus der printf/scanf-Familie nutzt.
> Das bringt doch nichts...
doch, wenn du den Kern von printf erstmal hast, kosten die restlichen
Funktionen nur noch ein paar Byte. Außerdem möchtest du wahrscheinlich
malloc & friends vermeiden. Damit brauchst du für viele
newlib-Funktionen einen Ersatz. Irgendwann (ziemlich bald?) geht selbst
schreiben dann schneller als Ersatz zu suchen. Du findest ja für jede
Funktion ein paar offene Quellen.
Wenn "kompakt" wichtiger ist als Standard-Konformität und Schönheit des
Quelltextes (jaja, das Auge des Betrachters...): schau dir mal die
dietlibc an.
Schaulus Tiger schrieb: >> Das bringt doch nichts... > > doch, wenn du den Kern von printf erstmal hast, kosten die restlichen > Funktionen nur noch ein paar Byte. Außerdem möchtest du wahrscheinlich > malloc & friends vermeiden. Damit brauchst du für viele > newlib-Funktionen einen Ersatz. Irgendwann (ziemlich bald?) geht selbst > schreiben dann schneller als Ersatz zu suchen. Du findest ja für jede > Funktion ein paar offene Quellen. > Tja, und vielleicht hatte irgendjemand schon einmal die gleiche Idee... ich möchte ungern das Rad neu erfinden. > Wenn "kompakt" wichtiger ist als Standard-Konformität und Schönheit des > Quelltextes (jaja, das Auge des Betrachters...): schau dir mal die > dietlibc an. So weit ich das überblicken kann ist die dietlibc nicht schlanker als newlib-nano, im Gegenteil, das Ding scheint viel fetter zu sein. Aber naja, es ist auch von fefe...
greg schrieb: > Moin, > > Aber wie schauts mit ganz kleinen Dingern aus, die nur 8-16 KB Flash und > sehr wenig RAM haben? Hat sich mal jemand damit beschäftigt, die newlib > noch weiter zu entschlacken oder gibt's vielleicht eine frei verfügbare, > noch schlankere libc? Keil & co haben ja anscheinend sowas. > Hier die Groesse einiger STM32 Files, die ich mit Ethernut aus dem SVN Baum erzeugt habe: -rwxr-xr-x 1 37856 20. Jul 19:29 ./cps_f373/cps_f373.bin -rwxr-xr-x 1 23980 14. Sep 16:06 ./cps_f373/cps_stm32.bin -rwxr-xr-x 1 13048 1. Sep 00:33 ./f3_discovery/f3_discovery.bin -rwxr-xr-x 1 24696 28. Jun 13:38 ./f3discovery_lcd_str7565r/lcd_test.bin -rwxr-xr-x 1 8812 12. Okt 18:46 ./l1_lcd/l1_lcd.bin Teilweise da auch Bin Files mit -O0 dabei.
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
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.