[linux-l] Probleme mit libc.so.6

Jan-Benedict Glaw jbglaw at lug-owl.de
Mi Nov 12 17:34:59 CET 2003


On Wed, 2003-11-12 06:08:52 +0100, olafBuddenhagen at web.de <olafBuddenhagen at web.de>
wrote in message <20031112050852.GA815 at sky.local>:
> On Sun, Nov 09, 2003 at 01:43:02PM +0100, Jan-Benedict Glaw wrote:
> 
> > > > Am Sam, 2003-11-08 um 21.26 schrieb M.WIEMERS at jpberlin.de:
> > > > [..]
> > > > > /lib/libc.so.6: undefined reference to `\
> > > > _dl_lookup_versioned_symbol_skip at GLIBC_PRIVATE'
> > > >                                 ^^^^^^       
> 
> > Hmmm... Hab' gerade nochmal die erste Mail dieses threads gelesen.
> > Jetzt bin ich eher der Meinung, daß die glibc header files nicht zur
> > glibc passen. Sind das "glibc"- und das "glibc-dev"-Paket beider
> > sauber installiert und auf exakt der selben Versionsnummer?
> 
> Daran kann es nicht liegen. Das Problem ist dass die *libc* nicht
> vorhandene Symbole linken will, ganz offensichtlich aus der ld-linux.so.
> Die libc ist ja schon kompiliert, und kümmert sich herzlich wenig umd
> irgendwelche header.

Right; mit der Einschränkung, daß die Header ganz böse mitspielen
können:)

> ld-linux.so gehört zur glibc, und muss natürlich in der gleichen Version
> vorliegen. (Derzeit 2.3.2) Aber die Symlinks /lib/ld-linunx.so.2 und
> /lib/libc.so.6 stimmen ja, behauptet er. (Nach meinem Verständnis muss
> das auch der Fall sein, sonst würde sich *kein einziges* dynamisch
> gelinktes Programm starten lassen...)

Nicht unbedingt. Er schrieb, daß nur selbstkompilierte Programme nicht
laufen. Ich vermute fast, daß sein ganzes System die neue libc hat (und
damit funktioniert), daß er aber bei den neuen, selbstkompilierten
Programmen als dynamischen Linker den "alten" ld-linux eingetragen hat.

Der "alte" kann die Programme dann nicht mehr mit der aktuellen libc
linken, da ihm selbst einige Symbole fehlen.

Ein "readelf -l /path/to/homegrown/program | grep interpreter" würde da
zu mehr Klarheit führen, ebenso wie ein "ls -l /lib".

> Ich kann mir nur vorstellen dass der Linker aus irgendeinem verrückten
> Grund "vergisst" die ld-linux.so zu linken, oder irgend eine andere
> Version von sonstwoher nimmt. Das kann man wohl nur rausfinden indem man
> dem Linker mit strace auf die Finger schaut.

...oder readelf benutzt:)

MfG, JBG

-- 
   Jan-Benedict Glaw       jbglaw at lug-owl.de    . +49-172-7608481
   "Eine Freie Meinung in  einem Freien Kopf    | Gegen Zensur | Gegen Krieg
    fuer einen Freien Staat voll Freier Bürger" | im Internet! |   im Irak!
   ret = do_actions((curr | FREE_SPEECH) & ~(NEW_COPYRIGHT_LAW | DRM | TCPA));
-------------- nächster Teil --------------
Ein Dateianhang mit Binärdaten wurde abgetrennt...
Dateiname   : signature.asc
Dateityp    : application/pgp-signature
Dateigröße  : 189 bytes
Beschreibung: Digital signature
URL         : <https://mlists.in-berlin.de/pipermail/linux-l-mlists.in-berlin.de/attachments/20031112/2782f4d5/attachment.sig>


Mehr Informationen über die Mailingliste linux-l