Linux 32 bit auf ARMv7 Prozessor

Hier verraten JVerein-Benutzer ihre Tricks und Tips zur JVerein

Moderator: heiner

Antworten
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Linux 32 bit auf ARMv7 Prozessor

Beitrag von wpein2m »

Hallo zusammen,
da ich zu diesem Thema keinerlei Informationen im Forum gefunden habe, trage ich hier meine Erfahrungen zusammen, vielleicht hilft es ja jemanden bei dem gleichen oder einem ähnlichen Problem.

Mein Ziel war es auf einem Samsung Chromebook XE303C12 JVerein zu nutzen. Dieses Chromebook wird von Samsung nicht mehr supported aber man kann ein 32 bit Arch Linux installieren (siehe: https://archlinuxarm.org/platforms/armv ... chromebook ). Die Herausforderung ist, dass das Chromebook auf einem ARMv7 Prozessor läuft und nicht wie zumeist auf einem Intel Prozessor. Ich vermute, dass man analog JVerein auch auf einem Raspberry in Betrieb nehmen kann.

Nachdem nun das 32 bit Arch Linux auf dem Chromebook läuft muss man die 2 folgenden 32 bit armv7 Pakete für Arch Linux herunterladen:
jre-openjdk (von mir genutzt v13.01.u9-1) sowie swt. Die 32 bit armv7 Pakete für Arch Linux findet man hier: https://archlinuxarm.org/packages (nach Architektur armv7h suchen).

jre-openjdk ist die JAVA run time, welche von Jameica/JVerein genutzt wird. Jameica selbst nutzt Eclipse, welches wiederum das Grafikpaket swt nutzt (das war in Arch Linux defaultmässig nicht installiert!!).

Installiert man nun jameica 32 bit Linux dann erhält man eine SWT-Fehlermeldung.

Es ist so, dass Jameica (welches Eclipse nutzt) für swt ein eigenes Modul mit Namen swt.jar nutzt. Dieses basiert aber auf einer Intel Architektur bzw. führt zu einer Fehlermeldung, dass diese Funktion nicht auf einem armv7-Prozessor genutzt werden kann. Die Lösung ist, das von Jameica/Eclipse zur Verfügung gestellte Modul swt.jar gegen ein 32 bit armv7 Modul gleichen Namens zu tauschen. Leider findet man im Arch Linux ARM Repository (siehe oben) kein solches (Eclipse)Modul. Mit einigem Suchen findet man aber für andere Linux Distributionen z.B. Fedora eine geeignete Datei z.B. hier: https://koji.stg.fedoraproject.org/koji ... ID=1083728 (bei Bedarf kann ich die Datei aber zusenden).

Nach dem Austausch von swt.jar startet JVerein wie erwartet.

Da wir eine remote MySQL Datenbank nutzen habe ich noch das Paket java-sqlite-jdbc installiert. Jetzt funktioniert auch der Zugriff auf die remote MySQL DB. Allerdings zur Zeit nur unverschlüsselt während wir normalerweise SSL-Verschlüsselung nutzen. Warum das nicht funktioniert muss ich noch untersuchen (Wireshark), die Meldung im JVerein log ist einfach lapidar: communication link failure.

Good luck!

Wolfgang
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Re: Linux 32 bit auf ARMv7 Prozessor

Beitrag von wpein2m »

Der angegebene Link zu swt.jar funktioniert nicht bzw. nur mit einem Login.

Hier eine freie Alternative: https://rpmfind.net/linux/rpm2html/sear ... rmv7hl-32)

Unter dem Link https://rpmfind.net/linux/mageia/distri ... rmv7hl.rpm kann man das RPM-Paket herunterladen, mit Winzip oder 7zip öffnen, darin findet man swt.jar
wpein2m
Beiträge: 134
Registriert: Freitag 7. Oktober 2016, 18:58
Verein: 1. TC Sankt Augustin
Mitglieder: 320
JVerein-Version: 2.8.15
Betriebssystem: Windows 10 / MacOS

Re: Linux 32 bit auf ARMv7 Prozessor

Beitrag von wpein2m »

Hier noch eine Ergänzung:

inzwischen funktioniert auch die verschlüsselte Verbindung (SSL) zur entfernten MySQL Datenbank (welche bei uns auf einem virtual private server läuft).

Die Lösung ist, das von MySQL verwendete Stammzellenzertifikat explizit in (Arch) Linux bzw. auch JVerein zu importieren.

Bei anderen Betriebssystemen z.B. Windows wird man beim ersten mal gefragt, ob man diesem "Anbieter" vertraut.
Klickt man ja, dann wird das Stammzellenzertifikat als vertrauenswürdig eingestuft und in den Zertifikatsspeicher aufgenommen.

In Linux, zumindest Arch Linux, scheint es diesen automatischen Mechanismus nicht zu geben. Eventuell gibt es dort eine konfigurative Möglichkeit, so dass unbekannte Stammzellenzertifikate akzeptiert werden können, damit habe ich mich aber nicht beschäftigt, weil obige Lösung funktionierte.
Antworten