Anzeige:
Ergebnis 1 bis 8 von 8

Thema: UnsatisfiedLinkError beheben (Java3D)

  1. #1
    Registrierter Benutzer Avatar von lousypoetry
    Registriert seit
    10.04.2005
    Beiträge
    56

    UnsatisfiedLinkError beheben (Java3D)

    Hallo!

    Ich versuch seit mehreren Tagen, Java3D zum Laufen zu bekommen. Nach der Installation hab ich direkt in Eclipse die notwendigen jars eingebunden und ein kleines Test-Applett (aus einem Tutorial) abgetippt. Beim kompilieren kommt folgender Fehler:

    Code:
    java.lang.UnsatisfiedLinkError: no j3dcore-ogl in java.library.path
    libj3dcore-ogl.so ist in bei mir im Verzeichnis /opt/java1.5/jdk1.5.0/jre/lib/i386/libj3dcore-ogl.so vorhanden, also hab ich versucht, den java.library.path zu setzen und in meine Klasse einen static-Block gebaut:

    Code:
    static {
    		String s = System.getProperty("java.library.path");
    		System.setProperty("java.library.path", s + ":/opt/java1.5/jdk1.5.0/jre/lib/i386");
    		System.out.println(System.getProperty("java.library.path"));
    	}
    Als Pfad wird dann auch
    Code:
    /usr/lib/j2re1.5-sun/lib/i386/client[*schnipp*]:/opt/java1.5/jdk1.5.0/jre/lib/i386
    ausgegeben, der Fehler bleibt jedoch.

    Hat jemand ne Idee? Mach ich da mit dem Pfad irgendwas falsch? Danke!

  2. #2
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Am besten das Applet oder Eclipse als Ganzes aus einem Environment starten, wo $LD_LIBARY_PATH das Verzeichnis mit enthält.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  3. #3
    Registrierter Benutzer Avatar von lousypoetry
    Registriert seit
    10.04.2005
    Beiträge
    56
    Mir scheint es, dass LD_LIBRARY_PATH bei mir gar nicht gesetzt ist. Nachdem ich ein bisschen gegoogelt hab bin ich unsicher, ob ich die Variable setzen sollte (Ubuntu Breezy, 2.6.12-9-386, Gnome 2.1.12), da hier und da davon deutlich abgeraten wird.

    Gibt es evtl. eine andere Möglichkeit, die Bibliotheken zur Verfügung zu stellen?

  4. #4
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Inwiefern wird davon abgeraten?

    Alternativ kannst du den entsprechenden Ordner natürlich auch in /etc/ld.so.conf respektive /etc/ld.so.conf.d/neuedatei eintragen. u.U. musst du nachher noch ldconfig ausführen.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  5. #5
    Registrierter Benutzer Avatar von lousypoetry
    Registriert seit
    10.04.2005
    Beiträge
    56
    Angenommen ich möchte die Variable doch setzen und probier:

    Code:
    LD_LIBRARY_PATH="/opt/java1.5/jdk1.5.0/jre/lib/i386"
    export $LD_LIBRARY_PATH
    Dann gibt
    Code:
    echo $LD_LIBRARY_PATH
    innerhalb einer Shell die aus Gnome gestartet wird eine leere Zeile aus, über die Terminals, die ich mittels Strg-alt-FX erreiche wird der Pfad angezeigt.

  6. #6
    Registrierter Benutzer Avatar von peschmae
    Registriert seit
    14.03.2002
    Ort
    Schweizland
    Beiträge
    4.549
    Ja wo setzt du die denn? Umgebungsvariablen gelten natürlich nur für die Shell in der sie gesetzt wurden, d.h. wenn du die global setzen willst musst du die in ein bashrc-File oder so schreiben, das jede Bash ausführt beim Start.
    Da gibts keinen magischen Swuuuusch-Kommunikationsbus zwischen den Shells. Sind auch nur gewöhnliche sterbliche Prozesse.

    Aber eigentlich reichts ja die lokal zu setzen wenn du das Programm startest.

    MfG Peschmä
    The greatest trick the Devil ever pulled was convincing the world he didn't exist. -- The Usual Suspects (1995)
    Hey, I feel their pain. It's irritating as hell when people act like they have rights. The great old one (2006)

  7. #7
    Registrierter Benutzer
    Registriert seit
    02.12.2002
    Ort
    Darmstadt
    Beiträge
    615
    Schon versucht, was hier http://forum.java.sun.com/thread.jsp...450&tstart=136 ab dem dritten Post steht?
    Seine Rätselhaftigkeit wird nur durch seine Macht übertroffen!

  8. #8
    Registrierter Benutzer Avatar von lousypoetry
    Registriert seit
    10.04.2005
    Beiträge
    56
    Zitat Zitat von peschmae Beitrag anzeigen
    Ja wo setzt du die denn? Umgebungsvariablen gelten natürlich nur für die Shell in der sie gesetzt wurden, d.h. wenn du die global setzen willst musst du die in ein bashrc-File oder so schreiben, das jede Bash ausführt beim Start.
    Da hast du natürlich recht *peinlich, peinlich*, sorry!

    Hm, jetzt ist meine glx-version nicht passend. Langsam verlier ich die Lust...

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •