[linux] glibc-2.2.5 a 2.3.2 sucastne na jednom systeme -ako na to?

Matus UHLAR - fantomas uhlar na fantomas.sk
Úterý Srpen 24 11:11:14 CEST 2004


On 23.08 16:52, peto wrote:
> > > 1.  bolo treba pridat ",..." ako posledny parameter v sscanf, co je
> > > dost divne

> > kam? ... sa pridava len do deklaracie funkcie... ak potrebujes
> > deklarovat sscanf, zrejme je chyba v tom ze nepouzivat hlavickove
> > subory a mal by si.

> v distribucii glibc-2.3.2 je v adresarai stdio-common subor sscanf.c a v nom
> bolo

> # define __vsscanf(s, f, a) _IO_vsscanf (s, f, a)

> int
> sscanf (s, format)
> const char *s;
> const char *format;

> ale  malo tam byt
> int sscanf (const char *s, const char *format,...) lebo inak "vystekaval"
> kompilator, ze pouzivam va_start vo funkcii s pevnym poctom parametrov

pozeram na glibc-2.2.5 aj 2.3.2 a oboje maju v prototypoch sscanf vypustku
(...). pouzivas gcc? si si isty ze si spustil korektne configure? a ze
pozeras spravnu cast kodu? (v hlavickovych suboroch aj zdrojakoch sa casto
nachadzaju rozne #ifdef-y ktore oddeluju rozne deklaracie toho isteho)

> > > 2.  kompilacia presla v poriadku,ale po zmene libc.so.6 odkazom na
> > > libc-2.3.2 s pridanim linku ld-linux.so.2 na ld-2.3.2 ci rozne
> > > komibancie starych a novych verzii glibc aj dynamickeho linkera
> > > neslo bootovat - musia tam byt stare verzie oboch.

> > kombinovat dve verzie libs je kua riziko, radsej to nerob.
> 
> Ale ved ja som zmenil len default dynamicky linker a glibc a aj s oboma
> novymi verziami to nejde.

hadaj, preco som napisal ze kombinovat dve libc je kua riziko? pokial si
neprekompilujes cely system s novou libc, mozes ocakavat problemy rozneho
typu.

> > > 3. inu velkost suborov som dostal pri pouziti kernel headers v /usr/src/,
> > > ale ani to nepomohlo,
> >
> > to tiez nerob, moze to narobit dalsiu paseku.
> 
> samozrejme, ze moze, ale v navode to odporucali ak sa kernel nevie dohodnut
> z libs. Este ma napadlo skompilovat kerenl s novymi libc a v nom bootnut
> nove libc.

kernel nepouziva libc funkcie...

> > > 4. nepomohla ani rada na net-e, kde potrebovali mat sucastne
> > > glibc-2.0 a glibc-2.1 a trvrdili, ze to ide cez instalaciu seconadry
> > > glibc do /usr/local/lib/glibc2 (mam tam link na non-root particiu,
> > > kde mam nainstalovane glibc) a nastavenia LD_* premennych v scripte,
> > > ktory spusti instalotok nech nastavujem ako nastvujem LD_PRELOAD,
> > > LD_LIBRARY_PATH , LD_PRELOAD_PATH a ewste aj ine LD_* parametre
> > > nedokazem spusit instalator? bud chyba GLIBC2.3, alebo, ak su
> > > nastavene cesty ku spravnemu libc, chyba GLIBC_PRIVATE, ktore
> > > libc-2.3.2 ziskava z dynamickeho linkera ld-2.3.2, lenze stale je
> > > ako linker ld-.2.2.5.Teda najvacsi problem je asi dynamicka zmena
> > > dynamickeho linker-a.
> 
> Neviem ci niekde neexistuje nedokumentopvana volba LD_LINKER alebo
> podobne . Pruser moze byt v tom, ze v tom navode len povedali, ze sa
> treba s LD* pohrat a potom bola reakcia, ze uz to ide a navyse povodny
> linker bol z novsej verzie libc.

co moze ist pri spolupraci glibc 2.0 a 2.1, nemusi ist pri 2.2 a 2.3

> > uff, toto moze byt vselicim... mozem odporucit len skusat albeo sa na to
> > vybodnut. Pripadne si skontrolovat ci niekde nerobis chyby.
> 
> ani nie lebo ldd jasne ukazuje, ze symbol GLIBC_PRIVATE v novej verzii glibc
> je uvedeny pri zavislosti glibc na novej verzii ld dokonca ju najde aj s
> cestou.

no a? chyby mozes robit mnohymi sposobmi na mnohych miestach, pricom
minimalne pri niektorych chybach sa ti GLIBC_PRIVATE prenesie.

Ale zhrniem to... pokial skusas naraz bezat dve glibc naraz, skusaj to ale
odo mna uz pomoc necakaj. JA ti odporucim novu verziu distribucie.
-- 
Matus UHLAR - fantomas, uhlar na fantomas.sk ; http://www.fantomas.sk/
Warning: I wish NOT to receive e-mail advertising to this address.
Varovanie: na tuto adresu chcem NEDOSTAVAT akukolvek reklamnu postu.
I wonder how much deeper the ocean would be without sponges. 




Další informace o konferenci linux