avr - obecne knihovny

Marek Peca marek@tynska.cuni.cz
Neděle Srpen 5 15:30:51 CEST 2007


> mam samozrejme vice souboru...
> jeden hlavni main.c a pak ty knihovni..
> problem je ten ze i pokud v main.c nemam nic(prazdny cyklus ani zadny
> include) kompiluji se mi i ostatni c soubory a promenne ...

Kdyz reknete prekladaci, ze ma vyrobit program z main.c, sinus.c a
cosinus.c, udela z kazdeho z nich .o a nasledne zavola linker, ktery
vsechny 3 soubory (a pripadne jeste nejaka dalsi .o, pokud je to
uvedeno v prislusnem implicitnim linker skriptu, napr. crt0.o) spoji
dohromady.

Pokud pouzivate _knihovnu_, tak vezmente nekolik .o, napr. sinus.o a
cosinus.o, a zaarchivujete je do jednoho souboru libneco.a. Pokud
tuto _knihovnu_ pouzijete v programu main.c, linker bude inteligent a
az bude linkovat main.o a libneco.a, tak pripoji jen to, co je treba.
Tzn. pokud pouzijete jen fce ze sinus.o, tak necha cosinus.o na
pokoji.

Ale z toho, co pisete, mam dojem, ze zadnou knihovnu nemate, ze mate
jen hromadu .c a rikate tomu "knihovna" ;-))).


Zdar,
MP




Další informace o konferenci Hw-list