
Ich habe versucht, eine Software zur Überwachung des alten Adaptec-Array-Controllers auszuführen und habe Folgendes erhalten:
error while loading shared libraries: libstdc++.so.5: cannot open shared object file: No such file or directory
Ich habe also versucht zu suchen, aber es ist nicht aufgeführt:
$ sudo apt-cache search libstd*
libstonith1 - Reusable cluster libraries -- libstonith1
libstdc++6-4.6-dev - GNU Standard C++ Library v3 (development files)
libstdc++6 - GNU Standard C++ Library v3
perl - Larry Wall's Practical Extraction and Report Language
libruby1.8 - Libraries necessary to run Ruby 1.8
libstartup-notification0 - library for program launch feedback (shared library)
apt-get update schlägt fehl, da die Online-Repos mit dieser alten Version nicht mehr funktionieren, selbst wenn ich die an anderer Stelle empfohlenen Sed-Tricks ausprobiert habe.
sudo sed -i -e 's/archive.ubuntu.com\|security.ubuntu.com/old-releases.ubuntu.com/g' /etc/apt/sources.list
Als nächstes habe ich die DVD ISO heruntergeladen vonHierund habe es zu einer sauberen /etc/apt/sources.list hinzugefügt, aber immer noch kein Erfolg.
Hier ist die aktuelle Datei „sources.list“:
# CD
deb file:/media/ubuntu-12.04.5-iso/ precise main restricted
# DVD
#deb file:/media/ubuntu-12.04.5-dvd-iso/ precise main restricted
$ sudo apt-get update
Get:1 file: precise Release.gpg [198 B]
Get:2 file: precise Release [4,595 B]
Ign file: precise/main TranslationIndex
Ign file: precise/restricted TranslationIndex
Ign file: precise/main Translation-en_AU
Ign file: precise/main Translation-en
Ign file: precise/restricted Translation-en_AU
Ign file: precise/restricted Translation-en
Reading package lists... Done
Ich habe sowohl die DVD- als auch die CD-ISOs ausprobiert.
Dann habe ich versucht, eine .deb-Datei herunterzuladen und zu installieren von http://old-releases.ubuntu.com/ubuntu/pool/main/g/gcc-3.3/libstdc++5_3.3.6-15ubuntu2_amd64.deb
$ sudo gdebi libstdc++5_3.3.6-15ubuntu2_amd64.deb
[sudo] password for zanotech:
Reading package lists... Done
Building dependency tree
Reading state information... Done
Building data structures... Done
Building data structures... Done
This package is not able to be installed
Dependency is not satisfiable: gcc-3.3-base (>= 1:3.3.6-15ubuntu2)
Auf diesem Server läuft mit Sicherheit gcc-4.6-base.
Zum Vergleich: Auf einem Centos 7-Server habe ich das Problem folgendermaßen umgangen:
# yum -y install compat-libstdc++-33
Was mache ich falsch?
Gibt es eine Möglichkeit, die alte libstdc++ einfach in dem Verzeichnis zu installieren, aus dem ich das Dienstprogramm ausführe?
Antwort1
Dies ist höchst spekulativ und definitiv nicht zu empfehlen, aber wenn die gemeinsam genutzte Objektdatei wirklich alles ist, was Sie wollen, warum kopieren Sie sie dann nicht „von Hand“ aus einer alten, veralteten Version von Ubuntu (ggf. einer, die Sie gerade beispielsweise in einer virtuellen Box erstellt haben)?