← Back to team overview

sslug-teknik team mailing list archive

Re: Gentoo-problem med shared libraries

 

On Tue, Oct 26, 2004 at 09:08:12AM +0200, Klaus S. Madsen wrote:
> On Mon, Oct 25, 2004 at 21:51:09 +0200, Rasmus Andersen wrote:
> > Halloej,
> > 
> > Jeg har et problem med min gentoo-box, nemlig at af en eller anden
> > grund kan jeg ikke bygge ting med shared libraries.
> Ud fra din beskrivelse ser det ud som om at libsandbox (som gentoo
> bruger under merge), ikke virker med din version af libdl. Den normale
> l?sning p? det problem er vist at k?re revdep-rebuild. Den er en del af
> gentoolkit pakken.
> 
> Hvis du ikke kan emerge gentoolkit (eller revdep-rebuild fejler inden
> den f?r compilet noget), s? kan du jo pr?ve at sl? sandbox fra. Det kan
> du g?re i FEATURES linien i din make.conf. Sandbox er et system som
> s?rger for at compile-jobs ikke kan tilg? filer uden for det bibliotek
> de bliver compilet i. Dvs. det er en sikkerheds-foranstaltning, som ikke
> er kritisk, hvis man bare skal have sit system til at virke igen :-)

Jeg takker for forklaringen. Jeg vidste det i forvejen :) men din
intention og forklaring var god nok. Jeg har pr?vet med -sandbox
i FEATURES og s? kan emerge godt k?re. Jeg har ogs? pr?vet revdep-
rebuild og den finder ikke noget den gerne vil g?re om. Og det er
nok det er min problem: Hverken jeg eller de v?rkt?jer jeg har
pr?vet har kunne finde ud af hvad der er galt.

> > /bin/bash: error while loading shared libraries: /lib/libsandbox.so: undefined symbol: _dl_load_lock
> > 
> > I have gotten messages about _dl_load_lock from trying to build the
> > gettext and apache packages too. I cannot emerge libperl since the
> > perl config script does not believe the system supports shared libraries
> > (or something).
> > 
> > Coming back to the error message above, it seems to stem from the
> > fact that /usr/lib/libdl.a does not contain this symbol:
> Det er for?vrigt forkert. Det er /usr/lib/libdl.so du skal bekymre dig
> om. Den anden er til statisk-linkning. Og min /lib/libsandbox.so peger
> for?vrigt p? /lib/libdl.so.2... S? mon ikke det hele bliver l?st ved en
> revdep-rebuild.

Ja. Det med det statiske lib var m?ske ikke rigtigt men som jeg
skrev andetsteds i min originale post, s? mangler /usr/lib/libdl.so
p? denne maskine. En reemerge af glibc f?r den ikke p? plads. En
manuel symlinking g?r ikke efterf?lgende emerges lykkeligere.

Som jeg ogs? skrev i den originale post, s? er det ikke kun portage
som er et problem. Arbjeder jeg uden om sandbox som foresl?et
ovenfor f?r jeg blot overs?ttelsesfejl i andre pakker. libperl og
gettext er to eksempler som g?r galt fordi de enten ikke tror de
kan lave en .so (libperl) eller fordi de pr?ver at linke med
libdl.a (tror jeg) og dermed ikke kan finde de udefinerede symboler
jeg som jeg opremsede. I gettexts tilf?lge kan jeg g? ind i /var/tmp/
.../src og ?ndre i makefilen s? LDFLAGS inkluderer -shared og s?
er den lykkelig. Men det er jo ikke en l?sning...

Jeg har forresten reemerged gcc og glibc uden held efter et tip
fra forums.gentoo.org. Uden held.

Tak for dit svar, jeg h?ber du kan vende tilbage med flere gode
forslag.

Rasmus


Follow ups

References