Strona 1 z 1

Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 14:09
autor: Antystatyczny
Witam, poprawiam dzisiaj swoje libsy do różnych rtc i przy okazji chciałbym wprowadzić jakiś standard. Do tego celu chciałem użyć time.h, ale stwierdziłem jego brak. Na dobrą sprawę można taki moduł samemu napisać, ale może jest jakaś inna nowsza opcja? Time.h niby ma być częścią standardu, a tu klops...

Co o tym sądzicie? Tworzyc własny time.h czy nie bawić się w to i jedynie zdefiniować typedef time_t?

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 14:38
autor: SuperGość
moze tu jakis trop złapiesz? http://www.nongnu.org/avr-libc/user-man ... _time.html ale pewnie juz to znasz

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 14:39
autor: Antystatyczny
Wiesz co... przejrzałem avr libc.pdf w folderze toolchaina avr i tego nie było... A w linku już cokolwiek widze na ten temat. Dzięki, już to studiuję

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 14:57
autor: Antystatyczny
W wersji 3.5.0.1662 nie ma time.h przejrzałem i porównałem obie dokumentacje i niestety ta zainstalowana automatycznie wraz z toolchainem i AS7.0 nie zawiera tego modułu. Spróbowałem rownież zainkludować time.h, ale kompilator natychmiast wywalił błąd:
Error time.h: No such file or directory test_C C:\Users\Anty\Documents\Atmel Studio\7.0\test_C\test_C\main.c 11

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 15:00
autor: mokrowski
Przeglądam właśnie toolchain Atmel'a i time.h rzeczywiście tam nie ma. Co ciekawe w pakietach GNU/Linux oraz OS X jest pełna biblioteka wraz z time.h oraz innymi właściwościami kompilatora. Spekuluję że Atmel miał problem z budowaniem pod Win i pewnie z tego powodu pominął (w Win jest trochę zamieszania z czasem... ).

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 15:04
autor: Antystatyczny
Hmm...zatem co byś zaproponował zamiast standardowego time.h? Mam napisane 3 moduły do róznych układów rtc i chciałbym je jakoś ustandaryzować, czyli trzymać dane o czasie i dacie w jednym zgodnym typie, używać ujednolicoego nazewnictwa funkcji itd...

Re: Brak time.h w AVR GCC?

: niedziela 08 lis 2015, 15:16
autor: mokrowski
Szeroko traktując temat:
1. Zapoznaj się ze standardem języka C np. C11 masz tu: http://www.open-std.org/JTC1/SC22/WG14/ ... /n1570.pdf
2. Przeczytaj co oznacza "hosted" oraz "freestanding". W standardzie wyżej to 4.6 i 5.4.2.1
3. Tam się zorientujesz że time.h, nie jest wymagany dla freestanding.

Rada...
Albo sam skompiluj toolchain albo skorzystaj z dostępnego w pakietach w GNU/Linux :-)