Witam! Ostatnimi czasy przesiadujê nad pisaniem aplikacji w systemie Nut/Os na AVR. Jest to system firmy egnite
- data opublikowania
20 lat temu
Witam! Ostatnimi czasy przesiadujê nad pisaniem aplikacji w systemie Nut/Os na AVR. Jest to system firmy egnite
Cze¶æ
U¿ytkownik "Tomasz Kuty³a" napisa³ w wiadomo¶ci news: snipped-for-privacy@as3-5.krakow.dialup.inetia.pl...
Nut/Os na AVR.
`NutEventBroadcastAsync'
kolejno¶æ
bibliotek? Jak
$(LIBDIR)/nutinit.o -lnutdev -lnutnet -lnutpro -lnutnet -
dzieje przy
AFAIK to mniej wiêcej tak : /nutinit.o mówi, ¿eby dolinkowaæ plik relokowalny jw.
-lnutdev ...itd to lista bibliotek do przeszukania przez linker ( biblioteki w katalogu okre¶lonym przez LIBDIR ) Wg tej listy linker kolejno ( od lewej ) przeszukuje biblioteki ( libnutdev.a libnutnet.a ...itd. ) w poszukiwaniu symboli, do ktorych wcze¶niej wyst±pi³o odwo³anie. Je¶li biblioteki odwo³uj± siê do siebie wzajemnie to wa¿na jest kolejno¶æ ( je¶li np. gdzie¶ w którym¶ module libnutpro.a u¿yta jest jako zewnetrzna funkcja wkompilowana w libnutnet.a - to libnutpro musi byæ przed libnutnet ). Je¶³i odwo³uj± siê do siebie wzajemnie 'na krzy¿' to na li¶cie biblioteka jest ponowiona - do powtórnego przeszukania.
BTW - linker zawsze wkleja kod ca³ego modu³u relokowalnego
*.o - niezale¿nie ile funkcji z niego jest rzeczywi¶cie u¿ytych. Dlatego - jak ³atwo zauwa¿yæ w istniej±cych archiwach *.a- na ogó³ lokuje siê ka¿d± funkcjê w oddzielnym module.
Przyk³adowo ostatecznie sformatowane wywo³anie linkera dla przyk³adu tcps :
C:\WinAVR\bin\avr-gcc.exe -mmcu=atmega128 -Wl,-Map=Nuttcps.map,--cr ef,-LC:\WinAVR\AvrSide\NutLib,--defsym=main=0 -o Nuttcps.elf nutinit.o tcps.o -lnutdev -lnutpro -lnutnet -lnutfs -lnutos -lnutcrt -lnutdev
-- Pozdrowienia Jurek Szczesiul
ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.