Java Absturz von Vektoris3D

Hallo alle zusammen,

ich hätte da mal ein interessantes Problem und hoffe, jemand hat eine Idee: ich weiß erstmal nicht weiter.

Von kapieren.de gibt es ein Programm (auch für Linux) zum visualisieren von Vektoren/Ebenen/Geraden usw.
Das ist gar nicht schlecht: ich verwende es gerne.
Meine Schule hat eine Schullizenz vor einigen Jahren gekauft: also hab ich es unter 12.04 installiert. Dann hab ich es, nach dem Umstieg auf 14.04 dort installiert.
Es ist seit Jahren im Image und hat immer funktioniert.
Donnerstag hat die Schulleiterin gefragt, ob es funktioniert, weil eine ihrer Schülerinnen eine GFS damit macht. Ich sag ja und zeig es ihr: nix geht.
Das Programm geht auf und sofort wieder zu.
Peinlich …
Gleichzeitig läuft es auf meinem Laptop (14.04 64bit upgedatet seit Ubuntu 8.04) und auf meinem Desktop (16.04 64bit. Ebenfalls immer upgedatet).

Ich rufe das Programm im Terminal auf als normaler Nutzer und es schmiert mit der unten angegebenen Meldung ab.
Error Log ist dabei.

Es ist ein Java Programm.
Also hab ich die Java Umgebung mittels
update-alternative --config java
mal von Oracle Java auf icedtea umgestellt: keine Änderung.
Entlinke ich die angemahnte nouveau_dri.so per unlink, motzt er über den nächsten Link im selben Verzeichnis (Hardware ist Laptop mit Intel Grafik).
So war kein Weiterkommen zu erziehlen.

Ich bin mir sicher, dass es unter diesem 14.04 Image schon funktioniert hat (hab es selber verwendet): irgend ein Update der letzten 2 Jahre muss es gefritzt haben.

Ich hab auch mal java komplett deinstalliert (garnicht soleicht) und das aktuellste aus dem Repo webupd8team installiert: keine Änderung.
Dann hab ich vektoris gelöscht und neu installiert: keine Änderung.
Ich hab das Verzeichnis .Vektoris im Userhome (Teste gerade mit linuxadmin) gemoved: keine Änderung
Ich hab die Rechte der Dateien und Verzeichnisse in /opt/vektoris mit meinem funktionierenden Vektoris auf meinem 14.04 Laptop verglichen: bei meinem Laptop gehören die Dateien root, auf dem Schullaptop linuxadmin: Rechte sind aber gleich.

Problem ist z.B. dass Vektoris immer behauptet die JRE sei 6.0_25-b06, dabei ist java 8 installiert: damit wurde es aber wohl 2011 kompiliert: das ist die aktuellste Version 2.5.3

Ich hoffe, jemand kann mit den error Logs was anfangen und mich auf eine Spur bringen.

So ist das halt, wenn man Software kauft: man bezahlt sie einmal und 6 Jahre später hat man noch immer die selbe Version …

Ich kopier jetzt mal das Installationsverz. von meinem Laptop auf den Schullaptop: mal sehen was passiert.

Viele Grüsse

Holger


linuxadmin@lapt61-02:/opt/vektoris$ ./Vektoris3D25PLUS
---- Find Directory /home/linuxadmin

A fatal error has been detected by the Java Runtime Environment:

SIGSEGV (0xb) at pc=0xcd1907ba, pid=3228, tid=3452435264

JRE version: 6.0_25-b06

Java VM: Java HotSpot™ Server VM (20.0-b11 mixed mode linux-x86 )

Problematic frame:

C [nouveau_dri.so+0x2207ba] __driDriverGetExtensions_virtio_gpu+0x1e428a

An error report file with more information is saved as:

/opt/vektoris/hs_err_pid3228.log

If you would like to submit a bug report, please visit:

http://java.sun.com/webapps/bugreport/crash.jsp

Aborted

vektoris-error.txt (2,9 KB)

Hallo Holger,

die vermeintlich falsche JRE-Versionsnummer ist schon komisch. Hat
vielleicht Dein Programm seine eigne Java-Runtime dabei?

Viele Grüße

Jörg

Hallo Jörg,

ja, das hat sie unter /opt/vektoris/jre/
wie man in der angehängten error.log am ersten Post sehen kann.
Das hab ich auch gerade erst bemerkt.
Kann ich da die aktuelle jre einfach hinverlinken?

LG

Holger

Hallo,

da der error offensichtlich bei der 3D Unterstützung passiert, hab ich mal die 3D Beschleunigung getestet: glxgears läuft ohne Probleme.

LG

Holger

Hallo Holger,

das wäre sicher einen Versuch wert. Oder mal direkt mit der aktuellen
JRE starten.

Viele Grüße

Jörg

Hallo Holger,

braucht vektoris eventuell die Java 3D API?
http://www.oracle.com/technetwork/articles/javase/index-jsp-138252.html

Gruß Jürgen

Hallo Jürgen,

braucht vektoris eventuell die Java 3D API?

keine Ahnung.
Es verwendet ziemlich sicher 3D Beschleunigung.
Aber auf meinem Laptop/Desktop hab ich nie sowas installiert.

Java 3D API

… geile Seite: wenn man auf „How to install“ klickt, bekommt man ein
404 Seite nicht gefunden …

LG

Holger

Hallo Jörg,

das wäre sicher einen Versuch wert.

weißt du welches Verzeichnis ich rüber linken muß?

Oder mal direkt mit der aktuellen
JRE starten.

… wie mach ich das?
java …/PfadZumVektorisprogramm
?

Viele Grüße

Holger

Hallo,

ich hab den Pfad gefunden und folgendes gemacht:

– 64bit jre verlinkt von /usr/lib/jvm/java-8-openjdk/jre nach /opt/vektoris/jre (vorher Orginal wegkopiert)
/opt/vektoris/Vektoris3D25PLUS
Java HotSpot™ 64-Bit Server VM warning: You have loaded library /opt/vektoris/libj3dcore-ogl.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It’s highly recommended that you fix the library with 'execstack -c ', or link it with ‘-z noexecstack’.
^C

Dann hab ich die 32bit Umgebung gelinkt:
– 32bit jre verlinkt von /usr/lib/jvm/java-7-openjdk-i386/jre nach /opt/vektoris/jre (vorher Orginal wegkopiert)

– -- fehlermeldung – --
linuxadmin@lapt61-02:~$ /opt/vektoris/Vektoris3D25PLUS
---- Find Directory /home/linuxadmin

A fatal error has been detected by the Java Runtime Environment:

SIGSEGV (0xb) at pc=0xc70337ba, pid=3538, tid=3349203776

JRE version: OpenJDK Runtime Environment (7.0_151-b01) (build 1.7.0_151-b01)

Java VM: OpenJDK Server VM (24.151-b01 mixed mode linux-x86 )

Derivative: IcedTea 2.6.11

Distribution: Ubuntu 14.04 LTS, package 7u151-2.6.11-0ubuntu1.14.04.1

Problematic frame:

C [nouveau_dri.so+0x2207ba]

Failed to write core dump. Core dumps have been disabled. To enable core dumping, try “ulimit -c unlimited” before starting Java again

An error report file with more information is saved as:

/opt/vektoris/hs_err_pid3538.log

If you would like to submit a bug report, please include

instructions on how to reproduce the bug and visit:

http://icedtea.classpath.org/bugzilla

Aborted
error log hängt an.

LG

Holger
hs_err_pid3538.log (65,0 KB)

Hallo,

dem normalen jdk scheint java3d zu fehlen, als hab ich diesen Tread befolgt:

https://ubuntuforums.org/showthread.php?t=1105627

und folgendes ausgeführt:

sudo apt-get install libjava3d-java libjava3d-jni
sudo cp /usr/share/java/j3d*.jar /usr/lib/jvm/java-7-openjdk-i386/jre/lib/ext/
cp /usr/lib/jni/libj3dcore-ogl.so /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/
sudo cp /usr/share/java/vecmath-*.jar /usr/lib/jvm/java-7-openjdk-i386/jre/lib/ext/

Es ist noch die i386 openjdk des Systems ins Vektoris Verzeichnis gelinkt.
Ein Start bringt aber leider noch immer Fehler:

/opt/vektoris/Vektoris3D25PLUS
OpenJDK Server VM warning: You have loaded library /usr/lib/jvm/java-7-openjdk-i386/jre/lib/i386/libj3dcore-ogl.so which might have disabled stack guard. The VM will try to fix the stack guard now.
It’s highly recommended that you fix the library with 'execstack -c ', or link it with ‘-z noexecstack’.
^C

Ich breche nach 2 Minuten mittels strg-c ab.

Jemand noch eine Idee?
Da scheint ein Sicherheitsmechanismus dem java etwas zu verbieten (zugrif auf 3D?).
Irgend was mit “Stack guard” … muss ich mal danach suchen.

LG

Holger

Keine Lösung aber warum nimmst du nicht das aktuelle Geogebra und setzt dessen 3D-Funktionen ein? Ich wüsste nicht, welche Wünsche in Sachen Geometrie da offen bleiben??

Hallo Michael,

Keine Lösung aber warum nimmst du nicht das aktuelle Geogebra und setzt
dessen 3D-Funktionen ein? Ich wüsste nicht, welche Wünsche in Sachen
Geometrie da offen bleiben??

… es ist der Wunsch meiner Schulleiterin.
Was sonst noch dagegen spricht:
Vektoris ist sehr einfach zu bedienen, man kann das Koordinatensystem
drehen wie man will und vor allem: meine Kollegen kennen es.

LG

Holger

Ich widerspreche ja nur ungern deiner Schulleiterin :slight_smile: — ABER … Geogebra kann das alles auch. Und es ist ständig aktuell, wenn man’s in der sources.list hat.
Kein Stress mit uralten Java-Versionen usw … ein Algebra-Fenster gibt es auch. Weißt du sicher selbst allles…

Ich bleibe also dabei: ich wüsste nicht, warum man etwas anderes braucht/will (auch nicht nur deshalb, weil man das andere/alte kennt)

Hallo alle zusammen,

ich hab mal was ganz verrücktes gemacht: ich hab Vektoris (selbes Image)
auf einem anderen Laptop versucht zu starten: schnurrt wie ein Kätzchen …

Also im selben Image startet Vektoris auf neueren Core i3 oder i5
Laptops ohne Probleme, gleichzeitig startet es aber auf meinen T61
Laptops (Core2Duo) und meinen älteren Desktops (AMD mit 780G
Chipsatzgrafik) nicht…

Inzwischen hab ich auch alles mögliche Versucht:

  • mitgebrachte jre wegkopiert -> er nimmt die vom System -> geht nicht
  • System jre in das Vektorisverzeichnis gelinkt -> er nimmt sie -> geht
    aber nicht
  • zwei verschiedene Java3d libs nachinstalliert UND bereitgestellt (weil
    die die mitgebrachte jre hatte) bringt auch nichts.

Ich nehme an, dass es am Grafikkartentreiber liegt, weil er meist den
nouveou.dri anmahnt oder eine der 3d libs.

Vielleicht hat ja Jemand eine Ahnung, wo man java "Hardwareunabhängiger"
machen kann…

Viele Grüße

Holger

Hallo Holger,

mit Nvidia-Grafikkarten gibt’s auch anderswo Ärger.

Bei uns hat sich für die - im Thread mit dem linbo-Blackscreen erwähnte

  • Geforce 8400GS der proprietäre nvidia-340 als der beste erwiesen. Mit
    nouveau ist nichts zu wollen. Nur 640x480. Mit anderen wurden Elemente
    in Crocodile Physics in wine nicht richtig dargestellt oder der
    Mauszeiger in GIMP zitterte.

Mein ThinkPad T420S mit NV4200 Primus lief lange Zeit nur mit
nvidia-304. Jetzt läuft die Umschaltung Intel/Nvidia (früher bumblebee)
sogar nur mit nouveau.

Mit dem T61 wirst Du probieren müssen, welcher Nvidia-Treiber der beste
für Deine Apps ist.
Die Versionsnummer, die Nvidia auf seiner Website für eine bestimmte
Grafikkarte in Windows empfiehlt, ist nicht unbedingt die richtige.

Gruß Jürgen

Hallo Jürgen,

mit Nvidia-Grafikkarten gibt’s auch anderswo Ärger.

ja: ich weiß.
Deswegen kommt mir seit ewigkeiten (>6 Jahre) keine nVidea mehr ins Haus.
Die T61 haben INtel Grafik, die Desktops AMD Grafik …
Um so seltsamer, dass der nouveau.dri angemahnt wird …

LG

Holger