staticke linkovani s glibc 2.1 ?
Michal Krause
michal na krause.cz
Úterý Leden 25 11:22:59 CET 2000
On 25/01/2000, Vaclav Ovsik wrote:
> Vytusil jsem zradu. Pohledem na veci z glibc jsem dosel k zaveru,
> ze dynamickych modulu, ktere muze loadovat za chodu je pomerne dost.
> Duvodem je bezpochyby zvetsujici se objem veci, ktere knihovna implementuje.
>
> Umite nekdo zalinkovat do programu ty moduly tak, aby to pri spusteni
> uz nic nechtelo ? Respektive lze to vubec ? Nasel jsem /usr/lib/libnsl.a,
> ktera asi implementuje NSS, ale jak to slinkovat bez zasahu
> do stavajiciho programu.
Pridat pri linkovani prametr -lnsl?
> Ja jsem nakonec do stromu pro chroot narval celou glibc, nebudu premyslet
> co kdy jaky soft bude potrebovat (je toho trochu vic).
Ja tedy nevim, prave jsem to testnul a bez nejmensich problemu jsem
vyrobil docista statickou binarku:
gcc -static -Wall -O2 -g -o xpath_test xpath_test.c -lxml -lz
ldd xpath_test
not a dynamic executable
chroot $PWD ./xpath_test
a zadny problem, vsechno facha jak ma...
> Jeste otazka pro zkusene makace. Predpokladam spravne nasledujici ?
> Kdyz udelam 'chroot /nekam /bin/prog'
> 1) Kernel pusti /nekam/lib/ld-2.1.2.so
> 2) ld-linux.so.2 bude tahat pekne dll z /nekam/lib... a nebude
> je michat s uz natazenymi v pameti, byt by mely stejne verze.
Tak to nevim...
> Jeste naivni otazka: Jmeno dynamickeho linkeru se zadratuje do kernelu
> pri prekladu ? (v mem pripade asi /lib/ld-2.1.2.so nebo
> /lib/ld-linux.so.2 ze ?) Nebo kernel zkousi najit ruzne dyn loadery?
Ja myslim, ze dynloader je urcen kompilerem, ne?
S pozdravem
--
Michal Krause /\
ICQ: 7665279 Informace (nejenom) ze sveta Linuxu /\/ \
email: mike na navrcholu.cz ______ http://www.root.cz/ ______ NAVRCHOLU.cz
Co napsat do signatury, aby to nikoho nepohorsilo? Snad jedine nejakou
obecne znamou pravdu. Doufam, ze vsichni vite, ze tucnak je bylozrava ryba.
Další informace o konferenci Linux