wake-up-neo.net

Fehler: libXext.so.6: Freigegebene Objektdatei kann nicht geöffnet werden: Keine Datei oder Verzeichnis

Beim Ausführen einer Java-Datei, die versucht, eine Ods-Datei zu öffnen, wird die folgende Fehlermeldung angezeigt.

Ausnahme im Thread "main" Java.lang.UnsatisfiedLinkError: /opt/software/jdk1.6.0_45/jre/lib/i386/xawt/libmawt.so: libXext.so.6: Datei mit freigegebenen Objekten kann nicht geöffnet werden Verzeichnis unter Java.lang.ClassLoader $ NativeL

Ich habe versucht - 'yum install libXext', habe aber die msg - bereits installiert.

Irgendwelche Vorschläge?

Antworten:

installieren Sie libXstst.so.6 Sie wird installiert und funktioniert einwandfrei

5
Green

In meinem Fall musste ich zusätzliche Bibliotheken installieren. 

yum install libXext.x86_64
yum install libXrender.x86_64
yum install libXtst.x86_64
10
user3018906

Zunächst können Sie versuchen, den folgenden Befehl zu verwenden:

yum search libXext

Nach dieser Suche müssen Sie die folgende Bibliothek installieren: libXext.i686 (oder am wahrscheinlichsten libXext.i386). Danach können Sie Folgendes ausführen:

Sudo yum install libXext.i686

Als Nebenbemerkung musste ich auch die folgenden Bibliotheken installieren, damit meine Java-Anwendung ordnungsgemäß funktioniert: libXrender.i686 und libXtst.i686. Ich denke, dass dieses Problem auf die Tatsache zurückzuführen ist, dass wir versuchen, eine Java 32-Bit-Version auf einem 64-Bit-Betriebssystem zu verwenden.

6
sanelli

Ich denke, Sie können 32-Bit-Jdk in einem 64-Bit-System installieren. Sie erhalten diese Fehlermeldung, wenn Sie jar ausführen

sie können überprüfen, ob CentOs 32 Bit oder 64 Bit ist. Geben Sie den Befehl ein:

getconf LONG_BIT

Wenn das CentOs 64-Bit ist, können Sie das 32-Bit-Jdk entfernen und ein neues installieren

1
liudabao

Für Arch habe ich pkgfile (das ich mit pacman installiert habe) verwendet und dann ausgeführt:

    pkgfile --update
    pkgfile libXtst.so.6

und es zeigte mir extra/libxtst.

Ich habe mit Pacman installiert und bisher so gut.

0
danielpflood
  1. verwenden Sie den Dateibefehl, um zu sehen, ob es 32 Bit oder 64 Bit ist file /opt/software/jdk1.6.0_45/jre/lib/i386/xawt/libmawt.soits Die Ausgabe sollte wie folgt aussehen:

    ELF 32-Bit LSB ausführbar

  2. dann installieren Sie die entsprechende lib für 32 Bit:

    Sudo yum installiere libXext.i686

    für 64 bit:

    Sudo yum installiere libXext

0
tzJacky