aptitude - no version info error

M

mythos

Mitglied
Hallo,

Ich habe eine aeltere GCC-Version von Source gebaut und installiert. Weiters habe ich den Pfad zu den Bins gesetzt, die Libs in ld.so.conf eingetragen, ldconfig aufgerufen, und den GCC via update-alternatives als Alternative zu meiner momentanen GCC Version registriert.

Das Problem: Aptitude beschwert sich seit dem, dass es keine Informationen zu den installieren GCC-Libs hat und verweigert nach werfen mehrerer Fehler die Arbeit.

Fehlermeldung:
Code:
aptitude: ../lib/libstdc++.so.6: no version information available (required by aptitude)
aptitude: ../lib/libstdc++.so.6: no version information available (required by aptitude)
aptitude: ../lib/libstdc++.so.6: no version information available (required by aptitude)
aptitude: ../lib/libstdc++.so.6: no version information available (required by aptitude)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libapt-pkg-libc6.7-6.so.4.6)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libapt-pkg-libc6.7-6.so.4.6)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libapt-pkg-libc6.7-6.so.4.6)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libsigc-2.0.so.0)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libsigc-2.0.so.0)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libcwidget.so.3)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libcwidget.so.3)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libept.so.0)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libept.so.0)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libept.so.0)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libxapian.so.15)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libxapian.so.15)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libxapian.so.15)
aptitude: ../lib/libstdc++.so.6: no version information available (required by /usr/lib/libxapian.so.15)

Wie krieg ich das wieder in den Griff?

mythos
 
Kleiner Nachtrag:
Anscheinend war das Eintragen des Lib-Verzeichnisses in ld.so.conf und der Aufruf von ldconfig eine schlechte Idee. Damit habe ich scheinbar bewirkt, dass das shared object stdlibc++ auf eine aeltere Version ausgetauscht wurde und kein Packetverwaltungstool (und wahrscheinlich auch viele andere Tools) nicht mehr funktionieren, da sie auf eine neuere libc++ Versionen gelinkt wurden (und nun diverse Funktionalitaet in der lib nicht mehr vorfinden).

Nachdem ich das Lib-Verzeichnis aus ld.so.conf entfernt habe, scheint alles wieder zu funktionieren.

Waere es moeglich, dass es gar nicht notwendig ist, die Libs einzutragen, da ohnehin eine neuere GCC-Version auf meinem System installiert ist und die Libs backwards-kompatibel sind?

mythos
 
Zum Kompilieren/ Linken sollte Deine alte gcc-Version alle notwendigen Dateien finden - von daher ist es nicht notwendig, die Bibliotheken in ld.conf.so einzutragen. Was ja auch, wie Du selber gemerkt hast, Deinem System nicht zutraeglich ist. (Deine Vermutung am Anfang Deiner zweiten Nachricht beschreibt genau die Aufgabe von ldconfig).

Um die Programme dann laufen zu lassen, muessen sie jedoch die gcc-eigenen Dateien finden, sprich die alten Bibliotheken. Da das per ld.conf.so nicht funktionieren wird, da dann die anderen (moderneren) Versionen/ Programme Deines Systems nicht mehr laufen werden, musst Du den Weg ueber die LD_LIBRARY_PATH-Variable gehen: Bevor Du die selbstkompilierten Programme startest, musst Du dieser Variable den Pfad zu den gcc-Bibliotheken anfuegen. Dann finden Deine Programme auch die entsprechenden Bibliothek, anstatt auf die Systembibliotheken zurueckzugreifen.
 
Aha. Alles klar. Danke!

Wobei: Ich habe gestern ein groesseres Programm kompiliert und ich kann es auch ausfuehren und zwar ohne den LD_LIBRARY_PATH gesetzt zu haben. Ich habe mir bislang eingeredet, dass die Libs entsprechend kompatibel sind. (Eventuell war es aber auch nur ein gluecklicher Zufall und das Programm benoetigt nichts Wesentliches von den Libs.)

mythos
 

Ähnliche Themen

Displayport + externer Monitor zeigt bei startx nichts erst bei DVI

Akonadi startet nicht mehr

dovecot und postfix Konfiguration Problem

Windows clients können nicht mehr auf lange laufendes System zugreifen

Wieder mal Probleme mit yum

Zurück
Oben