[LinuxOB] libs

Daniel Dombrowski daniel.dombrowski at linuxob.de
So Feb 29 14:47:48 CET 2004


On 2004.02.29 13:14, Christian Hesse wrote:
> On Sunday 29 February 2004 11:52, Daniel Dombrowski wrote:
> > On 2004.02.28 20:23, Christian Hesse wrote:
> > > Hallo zusammen!
> > >
> > > Ich habe hier ein kleines korioses Problme mit meinen libs. Um
> > > Opera dazu zu bringen flash abzuspielen muss ersteinmal das
> > > Programm /opt/opera/lib/opera/plugins/operamotifwrapper-3 (so ist
> > > der Pfad unter Gentoo) funktionieren, dieses braucht jedoch noch
> > > die lib libXm.so.3. Ich habe also einen Links von libXm.so.3 ->
> > > libXm.so.2.1 gemacht und erwartet, dass nach einem ldconfig alles
> > > funktionieren sollte...
> > > Tut es aber nicht. Irgendwie scheint ldconfig auch nicht alle
> > > libs in den cache zu schreiben:
> > >
> > > root at logo:/usr/X11R6/lib# ldconfig -p | grep 'libXm.so'
> > >         libXm.so.2 (libc6) => /usr/X11R6/lib/libXm.so.2
> > >         libXm.so (libc6) => /usr/X11R6/lib/libXm.so
> > >
> > > Wenn ich die Variable LD_LIBRARY_PATH manuell setze (unter Gentoo
> > > ist sie normalerweise gar nicht gesetzt) funktioniert es...
> > >
> > > Ich weiß, dass ich Daniel bei der Sache schonmal geholfen habe,
> > > komme aber im Moment selber nicht weiter. Hat jemand eine Idee
> > > woran das liegen könnte?
> >
> > Also normalerweise liegen diese ganzen X-Libs in /usr/X11R6/lib/.
> > Aus nicht ganz geklärten Gründen sucht Opera bzw. der
> > operamotifwrapper die libXm aber in /usr/lib/. Daher musst du, wenn
> > du deinen Link von libXm.so.3 -> libXm.so.2.1 in /usr/X11R6/lib/
> > gemacht hast, Opera davon überzeugen, die auch zu nehmen.
> >
> > Alternativ kannst du auch das machen, was du mir damals
> > vorgeschlagen hast: In /usr/lib/ folgende Symlinks erzeugen, sofern
> > diese noch nicht vorhanden sind:
> >
> > /usr/lib/libXm.so.2 -> libXm.so.3*
> > /usr/lib/libXm.so.3 -> ../X11R6/lib/libXm.so.2.1*
> >
> > Danach sollte auch Flash mit dem operamotifwrapper funktionieren.
> 
> Hmm, wenn ich den Link in /usr/lib/ anlege funktioniert es
> tatsächlich. Was mich dann aber wundert ist, dass operamotifwrapper-3  
> zum Beispiel libXt.so.6 in /usr/X11R6/lib/ findet...

Der tiefere Sinn dahinter ist mir bisher auch verborgen geblieben.

> root at logo:~# ldd /opt/opera/lib/opera/plugins/operamotifwrapper-3
>         linux-gate.so.1 =>  (0xffffd000)
>         libXm.so.3 => /usr/lib/libXm.so.3 (0x40028000)
>         libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x40234000)
>         libm.so.6 => /lib/libm.so.6 (0x4028b000)
>         libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x402ad000)
>         libdl.so.2 => /lib/libdl.so.2 (0x402bd000)
>         libc.so.6 => /lib/libc.so.6 (0x402c1000)
>         libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x403f1000)
>         libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x403fa000)
>         libXp.so.6 => /usr/X11R6/lib/libXp.so.6 (0x40411000)
>         libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40419000)
>         /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
>         libXau.so.6 => /usr/X11R6/lib/libXau.so.6 (0x404f9000)
> 
> Aus irgend welchen Gründen scheint ldconfig diese eine Lib in
> /usr/X11R6/lib/ nicht zu mögen.

Sieht hier recht ähnlich aus:

$ ldd /opt/opera/lib/opera/plugins/operamotifwrapper-3
        libXm.so.3 => /usr/lib/libXm.so.3 (0x40023000)
        libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x4022f000)
        libm.so.6 => /lib/libm.so.6 (0x40286000)
        libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x402a8000)
        libdl.so.2 => /lib/libdl.so.2 (0x402b8000)
        libc.so.6 => /lib/libc.so.6 (0x402bc000)
        libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x403ee000)
        libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x403f7000)
        libXp.so.6 => /usr/X11R6/lib/libXp.so.6 (0x4040e000)
        libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x40416000)
        /lib/ld-linux.so.2 => /lib/ld-linux.so.2 (0x40000000)
        libXau.so.6 => /usr/X11R6/lib/libXau.so.6 (0x404f6000)

> Jetzt funktioniert es auf jeden Fall schonmal, ich würde mich aber
> trotzdem freuen wenn mich jemand über die genauen Gründe aufklären  
> könnte.

Ich habe mich da nicht mehr näher mit beschäftigt, nachdem es dann  
ging. Hätte aber auch nichts dagegen die näheren Gründe zu erfahren.

Gruss

Daniel



Mehr Informationen über die Mailingliste linux