Re: Wie die Lib zu undefinierten Symbolen finden?

Thomas Michalka <[email protected]> Mon, 09 Jan 2012 15:17:58 +0100
Newsgroups gmane.linux.suse.programming
Message-ID <[email protected]>
Hallo David,


David Haller schrieb:
> Hallo,
>=20
> Am Sun, 08 Jan 2012, Thomas Michalka schrieb:
>> trotz googlen und Suche in diversen Listenarchiven kann ich keine
>> Antwort auf die Frage im Subject finden. Anlass ist der vergebliche
>> Versuch, ein Programm zu starten. Es meldet ein undefiniertes Symbol:
>>
>> $> ./programm
>> ./<programm>: symbol lookup error: ./<programm>: undefined symbol:
>> initPAnsiStrings
>=20
> for f in /usr/lib64/lib*.so.? ; do \
>     strings "$f" | grep -q initPAnsiStrings && echo "$f";\
> done

Aha, "strings" war es, was ich 'gesucht' habe. Dankesch=C3=B6n! Da ich je=
tzt
nicht nur den einen Pfad durchsuchen will, versuche ich es mit

$> find / -maxdepth 5 -type f -name lib*.so.? -print0 |
   xargs -0 strings -f | grep initPAnsiStrings

... und werde leider auch nicht f=C3=BCndig. Die Lib ist wohl gar nicht
installiert, deshalb findet das <programm> sie auch nicht und kann daher
nicht starten.

Daher ist, diesmal hoffentlich pr=C3=A4ziser formuliert, die Frage:
Wie finde ich heraus, in welcher nicht installierten Lib das Symbol
initPAnsiStrings definiert ist?

Dann m=C3=BCsste ich herausfinden k=C3=B6nnen, welches Paket mir fehlt (=C3=
=BCber die
Abh=C3=A4ngigkeiten geht's nicht, da das Programm von extern in einem
TGZ-File geliefert wurde).


Gru=C3=9F, Tom
--=20
To unsubscribe, e-mail: [email protected]
To contact the owner, e-mail: [email protected]