[ LUGOS ] Zopet jaz

Andrej Presern andrejp na luz.fe.uni-lj.si
Pon Feb 9 01:49:16 CET 1998


Bostjan Vlaovic wrote:
> 
> Zdravo!
> 
> libc paket vsebuje:
> 
> [root na ferdo System]# rpm -qpl libc-5.4.38-2.i386.rpm
> /lib/libc.so.5.4.38
> /lib/libm.so.5.0.9
> 
> tcl pa javi:
> [root na ferdo System]# rpm -i tcl-8.0p2-2.i386.rpm
> failed dependencies:
>         libm.so.6 is needed by tcl-8.0p2-2
>         libdl.so.2 is needed by tcl-8.0p2-2
>         libc.so.6 is needed by tcl-8.0p2-2
>         ld-linux.so.2 is needed by tcl-8.0p2-2
>         /sbin/ldconfig   is needed by tcl-8.0p2-2
> 
> Kaj sedaj tu predstavlja libc.so.6 in libm.so.6, saj imam zadnjo verzijo
> libc-ja.

To, kar imas ti, je libc - verzija 5. Kar pa potrebujes, je Glibc (glej
G, kot GNU), torej libc - verzija 6.

> ----------
> Kako lahko zvem del katerega paketa je libdl.si.2 ce recimo ne bi
> imel stare verzije ze na sistemu?

Ne izves.

> Ta je del paketa ld.so, ki si ga zaenkrat se ne upam instalirati -> cakam
> na vas odgovor.

Ld.so naceloma lahko instaliras (za rezultate vseeno ne odgovarjam),
ampak ne bo resil tvojih tezav (vsaj ce sodim po tem, kaj je v MOJEM
ld.so paketu). Probaj z rpm -qlp <filet>, pa bos videl, kaj je v njem
(ce imas RH paket, enak kot je ta, ki ga imam jaz, tam notri ne bos
videl ld.so.2:)

Potrebujes paket glibc. Ce te zelo zelo srbijo prsti, lahko poskusis
zadevo instalirat. V vsakem primeru pa imej v blizini knjiznice, ki jih
bo paket prepisal, ce ti bo potem slucajno kaj crknilo:) Ce nisi ravno
ekspert, ti NE priporocam, da se lotis updatea ze instaliranih libc5
knjiznic v glibc (poleg samega glibc paketa, ki ni tako problematicen),
ker to ni trivialna nadgradnja! In ce mislis eksperimentirati ne glede
na opozorila, vsaj naredi backup sistema, drugace ti bo prej ali slej
zal in to ti garantiram.

> Kaj se zgodi s staro verzijo? Programi avtomaticno uporabijo
> /lib/libdl.so.2, ce /lib/libdl.so.1-ja ni vec?

Ne. Ravno tu je trik. libc in glibc sta zaradi uporabe razlicnih
struktur popolnoma nezdruzljivi. Verzije (ne revizije) so tudi drugace
med seboj v glavnem nezdruzljive, ampak vcasih kak program deluje tudi z
novo verzijo knjiznice (npr. programi za motif 1.2 v glavnem delujejo
tudi z motif 2.0).

Prehod iz libc na glibc se je zgodil zato, ker libc uporablja kernelove
strukture, ki se precej pogosto spreminjajo, zato je treba tudi
software, ki te strukture uporablja, takrat ponovno prevesti. Glibc ima
po drugi strani svoje strukture, ki so neodvisne od kernelovih in so na
vseh platformah enake, kar zagotavlja lazje portiranje, odpravi pa tudi
prej omenjeno vedno ponovno kompajliranje sistemskih (in drugih)
programckov in programov z novimi strukturami.

Andrej




Dodatne informacije o seznamu Starilist