-
Data: 2013-06-25 18:20:29
Temat: Re: Decyzja zapadła...(mikrokontrolery ST)
Od: shg <s...@g...com> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]W dniu wtorek, 25 czerwca 2013 16:13:49 UTC+2 użytkownik brak napisał:
> > Ale co ma system operacyjny do standardowej biblioteki C?
> To iz zwykle jest w jakis sposob dostarczona/zintegrowana oraz przetestowana
> i nie ma potrzeby jej "dotykania". Biblioteka C jest jednym z komponetow
> systemu i od jej jakosci zalezy jakosc systemu.
Zwykle albo nie jest dostarczana a jeżeli jest, to kompilowana z domyślnymi
ustawieniami. Integracja polega na tym, że OS używa tej biblioteki.
> > printf() to akurat najmniejszy problem. Potrzebuję małe funkcje standardowe
(string.h, stdlib.h itd.). Te nie są w tych OS-ach zrobione na nowo, ani w tych,
które proponuje Mario. Wszędzie sugerują linkowanie z newlib.
>
> Niekoniecznie, np. eCos:
>
> "eCos provides compatibility with the ISO 9899:1990 specification for the standard
C library, which is essentially the same as the better-known ANSI C3.159-1989
specification (C-89)."
To znaczy tylko tyle, że jest kompatybilny ze standardem, a nie że ma wbudowane
wszystkie potrzebne funkcje. Można go skompilować korzystając ze standardowej
biblioteki zgodnej z powyższym.
> > Całej biblioteki się nigdy nie linkuje (to ma chyba ze 2 MB).
> Yyy. Przeciez od dawna juz linker usuwa nie uzywane obj-ty. Tak wiec nie uzywajac
"namietnie" biblioteki, likner nie dolaczy jej w calosci.
W porzedniej wiadomości napisałeś, że "nie trzeba linkować całej biblioteki", rzecz
oczywista, ale zabrzmiało to jakby w innych przypadkach trzeba było.
> > OS niczego w tej kwestii nie rozwiązuje.
> W przypadku eCos biblioteka C jest jednym z jego komponentow, ktory jest
konfigurowalny aby zmniejszyc rozmiar kodu ponad to co jest wstanie zrobic linker -
co rozwiazuje problemy z biblioteka C.
Podłubałem trochę. eCos używa newlib jako standardowej biblioteki, ona jest częścią
środowiska, nie samego systemu. Na upartego można skompilować z inną (tekst wyżej o
kompatybilności), ale trzeba by gmerać w skryptach. Nigdzie w nich nie znalazłem
kompilacji newlib z innymi flagami niż domyślne. Domyślne flagi newlib generują kod
taki, jak pisałem wcześniej. Żeby uzyskać pożądany efekt, musiałbym ustawić
odpowiednie flagi do kompilacji newlib przy budowaniu eCosa, a właściwie toolchaina,
a to bez sensu, bo równie dobrze mogę sobie zrobić samą newlib.
Na wszelki wypadek przedstawię to na obrazku:
http://wstaw.org/m/2013/06/25/strcpy.png
Po lewej domyślne flagi, po prawej -Os bez dodatkowych "optymalizacji" i tu leży
istota mojego problemu.
Toolchain stąd:
https://launchpad.net/gcc-arm-embedded
Dostępna jest tam libc kompilowana w dwóch wersjach. Zmienny przecinek niestety tylko
w jednej wersji.
OS do niczego mi nie potrzebny.
Następne wpisy z tego wątku
Najnowsze wątki z tej grupy
- w czasach LED komary mają ciężko
- walizka z kodami
- Rejestrator temperatur - termopara, siec
- Router LTE z możliwością zmian MTU
- Fajny film widziałem...
- Jaka ładowarka sieciowa do Iphona?
- Taśma izolacyjna do prac elektrycznych
- Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Re: Recenzja 3.1A ;) w 6 gniazdach...
- Wkrętarki, wiertarki...
- Zasilacz impulsowy 12V 10A, coś godnego uwagi jako zamiennik akumulatora wkrętarki
- Mouser - koszt wysyłki
- [OT] Jak wycinac ksztalt w piance lub styropianie?
Najnowsze wątki
- 2025-07-19 Wrocław => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-07-19 Chiny => Koordynator Produkcji / Przedstawiciel ds. rozwoju produktu <
- 2025-07-19 Środa Wielkopolska => SAP FI/CO Internal Consultant <=
- 2025-07-19 China => Production Coordinator / Representant Product Dev <=
- 2025-07-19 Warszawa => Specjalista wsparcia IT - analiza techniczna sprzętu IT <
- 2025-07-19 Warszawa => Strategic Account Manager <=
- 2025-07-19 Warszawa => Key Account Manager IT <=
- 2025-07-19 Skazany za zabójstwo a ofiara żyje
- 2025-07-19 Zakrzewo => SAP HCM Consultant <=
- 2025-07-19 Poznań => Konsultant SAP HCM <=
- 2025-07-19 Poznań => SAP HCR Consultant <=
- 2025-07-18 celnicy pobili policjanta
- 2025-07-18 Warszawa => Technik IT - Konfiguracja i Wsparcie Sprzętowe <=
- 2025-07-18 Warszawa => Specjalista ds. Sprzętu IT i Wsparcia Technicznego <=
- 2025-07-18 Białystok => Kotlin Developer <=