Sie befinden sich auf einem 64-Bit-System und haben keine 32-Bit-Bibliotheksunterstützung installiert.
So installieren Sie die (Basis-) Unterstützung für 32-Bit-ausführbare Dateien
(Wenn Sie in Ihrem Setup kein Sudo verwenden, lesen Sie den folgenden Hinweis.)
Die meisten Desktop-Linux-Systeme der Fedora / Red Hat-Familie:
pkcon install glibc.i686
Möglicherweise einige Desktop-Debian / Ubuntu-Systeme?:
pkcon install ia32-libs
Fedora oder neuer Red Hat, CentOS:
sudo dnf install glibc.i686
Älteres RHEL, CentOS:
sudo yum install glibc.i686
Noch älter RHEL, CentOS:
sudo yum install glibc.i386
Debian oder Ubuntu:
sudo apt-get install ia32-libs
sollte dir die (erste, Haupt-) Bibliothek besorgen, die du brauchst.
Sobald Sie das haben, werden Sie wahrscheinlich Support-Bibliotheken benötigen
Jeder, der eine Installation benötigt glibc.i686
oder glibc.i386
wahrscheinlich auch auf andere Bibliotheksabhängigkeiten stößt. Sie können ein Paket identifizieren, das eine beliebige Bibliothek bereitstellt
ldd /usr/bin/YOURAPPHERE
Wenn Sie nicht sicher sind, ob es drin ist /usr/bin
, können Sie auch darauf zurückgreifen
ldd $(which YOURAPPNAME)
Die Ausgabe sieht folgendermaßen aus:
linux-gate.so.1 => (0xf7760000)
libpthread.so.0 => /lib/libpthread.so.0 (0xf773e000)
libSM.so.6 => not found
Suchen Sie nach fehlenden Bibliotheken (z. B. libSM.so.6
in der obigen Ausgabe), und suchen Sie für jede Bibliothek das Paket, das sie bereitstellt.
Befehle zum Finden des Pakets pro Distributionsfamilie
Fedora / Red Hat Enterprise / CentOS:
dnf provides /usr/lib/libSM.so.6
oder bei älteren RHEL / CentOS:
yum provides /usr/lib/libSM.so.6
oder auf Debian / Ubuntu:
Installieren Sie zunächst die Datenbank für und laden Sie sie herunter apt-file
sudo apt-get install apt-file && apt-file update
dann suchen mit
apt-file find libSM.so.6
Beachten Sie den Präfixpfad /usr/lib
im (normalen) Fall; In seltenen Fällen leben einige Bibliotheken /lib
aus historischen Gründen noch unter … Auf typischen 64-Bit-Systemen leben 32-Bit-Bibliotheken /usr/lib
und 64-Bit-Bibliotheken /usr/lib64
.
(Debian / Ubuntu organisieren Bibliotheken mit mehreren Architekturen unterschiedlich.)
Installieren von Paketen für fehlende Bibliotheken
Das Obige sollte Ihnen einen Paketnamen geben, zB:
libSM-1.2.0-2.fc15.i686 : X.Org X11 SM runtime library
Repo : fedora
Matched from:
Filename : /usr/lib/libSM.so.6
In diesem Beispiel lautet der Name des Pakets libSM
und der Name der 32-Bit-Version des PaketslibSM.i686
.
Sie können das Paket dann installieren, um die erforderliche Bibliothek mithilfe pkcon
einer GUI oder sudo dnf/yum/apt-get
nach Bedarf abzurufen. ZB pkcon install libSM.i686
. Bei Bedarf können Sie die Version vollständig angeben. ZB sudo dnf install ibSM-1.2.0-2.fc15.i686
.
Einige Bibliotheken haben vor ihrem Namen einen Epochenbezeichner. Dies kann weggelassen werden (Neugierige können die folgenden Hinweise lesen).
Anmerkungen
Warnung
Im Übrigen impliziert das Problem, mit dem Sie konfrontiert sind, entweder, dass Ihre RPM-Datenbank (bzw. DPkg / DSelect) beschädigt ist oder dass die Anwendung, die Sie ausführen möchten, nicht über den Paketmanager installiert wurde. Wenn Sie Linux noch nicht kennen, möchten Sie wahrscheinlich nach Möglichkeit die Verwendung von Software aus anderen Quellen als Ihrem Paketmanager vermeiden ...
Wenn Sie "sudo" nicht in Ihrem Setup verwenden
Art
su -c
jedes Mal sudo
, wenn Sie sehen , z.
su -c dnf install glibc.i686
Über den Epochenbezeichner in Bibliotheksnamen
Der Bezeichner "Epoche" vor dem Namen ist ein Artefakt der Art und Weise, wie die zugrunde liegenden RPM-Bibliotheken mit Versionsnummern umgehen. z.B
2:libpng-1.2.46-1.fc16.i686 : A library of functions for manipulating PNG image format files
Repo : fedora
Matched from:
Filename : /usr/lib/libpng.so.3
Hier 2:
kann das weggelassen werden; nur pkcon install libpng.i686
oder sudo dnf install libpng-1.2.46-1.fc16.i686
. (Dies impliziert vage Folgendes: Irgendwann wurde die Versionsnummer des libpng
Pakets rückwärts gerollt, und die „Epoche“ musste erhöht werden, um sicherzustellen, dass die neuere Version bei Aktualisierungen als „neuer“ betrachtet wird. Oder etwas Ähnliches geschah. Zweimal .)
Aktualisiert , um die verschiedenen Optionen des Paketmanagers klarer zu verdeutlichen und abzudecken (März 2016)
Ich bin gerade auf das gleiche Problem auf einem frisch installierten CentOS 6.4 64-Bit-Computer gestoßen. Ein einziger yum-Befehl behebt dieses Problem zu 99% ähnlicher Probleme:
yum groupinstall "Kompatibilitätsbibliotheken"
Stellen Sie dies entweder mit 'sudo' voran oder führen Sie es als root aus, je nachdem, was für Sie am besten geeignet ist.
quelle
Wenn Sie einen solchen Fehler erhalten, tun Sie dies im Allgemeinen einfach
dann siehst du so etwas wie:
und dann führen Sie einfach Folgendes aus, wie BRPocock geschrieben hat (falls Sie sich fragen, was die Logik war ...):
quelle
Versuchen
Hoffe das klärt sich auf.
quelle
Ich wollte nur einen Kommentar in BRPocock hinzufügen, aber ich habe nicht die ausreichenden Berechtigungen.
Mein Beitrag war also für alle, die versuchen, IBM Integration Toolkit aus dem IBM Integration Bus-Bundle zu installieren.
Wenn Sie versuchen, den Befehl "Installation Manager" aus dem Ordner / Integration_Toolkit / IM_Linux auszuführen (die auszuführende Datei lautet "install"), wird der in diesem Beitrag angezeigte Fehler angezeigt.
Weitere Anweisungen zur Behebung dieses Problems finden Sie auf der IBM Webseite: https://www-304.ibm.com/support/docview.wss?uid=swg21459143
Hoffe, das hilft jedem, der versucht, das zu installieren.
quelle
sudo yum install fontconfig freetype libfreetype.so.6 libfontconfig.so.1 libstdc ++. so.6
quelle
Ich würde hinzufügen, dass Sie für Debian mindestens einen Compiler im System benötigen (gemäß den 32-Bit-Bibliotheken von Debian Stretch und Jessie ).
Ich habe installiert,
apt-get install -y gcc-multilib
um eine ausführbare 32-Bit-Datei in meinem Docker-Container basierend auf debian: jessie auszuführen.quelle
Sie können
.i686
stattdessen auch OpenJDK 32-bit ( ) installieren . Nach meinem Test wird es installiert und funktioniert ohne Probleme.Hinweis:
Sehen Sie hier für weitere Details.
quelle