howto NetBSD + jdk ?

rbrinkmo

Well-Known Member
Es sieht so aus als wenn ich gezwungen werde Tomcat unter NetBSD statt unter FreeBSD laufen zu lassen (fragt nicht, ist so - hat was mit xen zu tun). Nichts gegen NetBSD (ganz im Gegenteil) nur gerade hinsichtlich der Installation des SUN JDK 1.4 unter NetBSD ist es schwierig an die notwendigen Informationen zu gelangen. Meines Wissens gibt es auch unterschiede zu FreeBSD so, dass man hier nicht einfach "abgucken" kann.

Das einzig ansatzweise scheinbar brauchbare was ich fand ist folgendes:
http://wiki.bsd-crew.de/index.php/Native_Java_unter_NetBSD

Leider fehlen mir ein paar Angaben in dieser Anleitung. Voraussetzungen werden in Stichpunkten ohne Verweise auf weitere Informationen aufgeführt. Bei der Ausführung der Befehle gibt es teilweise keinen Hinweis darauf wo (Pfad/Verzeichnis) diese ausgeführt werden sollten.
Zudem ist die letzte Änderung schon fast wieder ein Jahr her so, dass vielleicht zwischenzeitlich ein leicht verändertes Vorgehen notwendig ist (NetBSD Version 3, neue pkgsrc Linux Emul, neuer java patch 8).

Hat jemand bereits Erfahrung mit der Installation des JDK 1.4 unter NetBSD 3?
Kann jemand das Vorgehen in dieser Anleitung bestätigen (ggf. hier kurze Ergänzungen anfügen)?
Könnt ihr mir ein paar Tips geben oder weitere Quellen nennen?

märßi boku
 
Zuletzt bearbeitet:
Auch wenn das jetzt so eine Null-Info-Antwort ist: Ich werde die Tage nach der Anleitung mal probieren, Java zum laufen zu bekommen. Sollte ich es hinbekommen, schreibe ich davon, wenn nicht, ebenfalls. Kann allerdings noch ein paar Tage dauern. Evtl. probiere ich es aber auch schon morgen Abend.
 
Jeff schrieb:
Auch wenn das jetzt so eine Null-Info-Antwort ist: Ich werde die Tage nach der Anleitung mal probieren, Java zum laufen zu bekommen. Sollte ich es hinbekommen, schreibe ich davon, wenn nicht, ebenfalls. Kann allerdings noch ein paar Tage dauern. Evtl. probiere ich es aber auch schon morgen Abend.
Das wäre wirklich nett. Wenn es morgen klappt, super. Wenn nicht ... ich werde eh selbst probieren müssen, die Vorbereitungen sind aber noch nicht abgeschlossen. Sollte ich vorher zu einer Erkenntnis gelangen werde ich die hier natürlich auch kund tun.

Ansonsten sind alle ergänzenden Hinweise immer noch willkommen.
 
also bei mir läuft das sun-jdk-1.5 super unter dem linux-emu einfach von der http://java.sun.com das packet runterladen, in den ordner mit den distfiles legen und make install. am ende der installation wird noch etwas angegeben, was man in fstab eintragen muss, dann läuft es ohne probleme.
bei mir läuft damit eclipse und der apache-tomcat.
 
VanDom schrieb:
also bei mir läuft das sun-jdk-1.5 super unter dem linux-emu einfach von der http://java.sun.com das packet runterladen, in den ordner mit den distfiles legen und make install. am ende der installation wird noch etwas angegeben, was man in fstab eintragen muss, dann läuft es ohne probleme.
bei mir läuft damit eclipse und der apache-tomcat.

Wow. Das ist ja einfach. Also ohne diesen Patch -> http://www.eyesbeyond.com/freebsddom/java/jdk15.html ?
 
ja genau, ohne patch, es muss ja auch nicht kompiliert werden, da ich die binär packete für linux verwende.
 
rbrinkmo, Dir ist aber klar, daß das nutzen der Binärpakete etwas ganz anderes ist, als Java nativ auf Deinem Rechner zu kompilieren?
 
Jeff schrieb:
rbrinkmo, Dir ist aber klar, daß das nutzen der Binärpakete etwas ganz anderes ist, als Java nativ auf Deinem Rechner zu kompilieren?
Nicht ganz. Ich habe auch gerade überlegt inwiefern ich dann z.B. auch tomcat anhand eines rpm in der Linux-Emul laufen lassen müsste. Wie ist das dann z.B. mit der globalen Variable JAVA_HOME? Wie wirkt sich der Unterschied aus?

Wäre nett wenn man mir den Unterschied etwas verdeutlicht. Ich bin es bisher gewohnt mit native Java zu arbeiten. Wenn mir die Unterschiede bekannt wären, würde mir die Entscheidung leichter fallen ob ich native oder emuliert verwenden werde.

edit:
Ich habe bisher noch nirgends mit emulation gearbeitet und mich daher auch noch nicht weiter mit dem Thema Emulation befasst. Eins ist mir schon klar, wenn ich etwas auf einer emulierten Umgebung einsetze wird sich dies sicherlich mehr oder weniger auf die Performance auswirken. Inwiefern jedoch noch andere Auswirkungen und Abhängigkeiten mit rein spielen ist mir bisher noch nicht klar.
Was mich jetzt etwas wundert ist, dass in dem o.g. Wiki als Voraussetzung ebenfalls eine Linux-Emulation aufgeführt ist. Wird die dort nur zum Erstellen des nativen Java benötigt und kann anschliessend wieder deaktiviert/deinstalliert werden?
 
Zuletzt bearbeitet:
Wer des googelns fähig ist...

...kann sich so manche Informationen selbst beschaffen. Jaja, ich weiss.

Also hier mal für "Leidensgenossen" einige informative Links:

NetBSD:
http://www.lindloff.com/netbsd/netbsd-linuxemu.html
wobei ich das hier als infomativer empfinde:
http://www.newbie-net.de/anleitung_netbsd_linuxemu.html

FreeBSD:
http://www.freebsd.org/doc/de_DE.ISO8859-1/books/handbook/linuxemu.html

OpenBSD:
http://www.openbsd.org/faq/de/faq8.html#Programming

Nach meinem jetzigen Verständnis gibt es also nirgends spürbare Performance-einbußen sofern halbwegs aktuelle Hardware verwendet wird.
FreeBSD bietet "sogar" binärkompatibilität. Wenn ich das richtig verstanden habe brauche ich dort also keinen Linux-Emulator da das Betriebssystem von Hause aus bin binären Linux-Applikationen umzugehen weiss.
Edit: Oder doch nicht ganz richtig? Denn hier erreicht man die Binärkompatibilität scheinbar auch durch emulation. Häh? Wie jetzt?
Besser ich les es mir irgendwann noch zwei bis drei mal durch. Jetzt interessiert mich aber ersteinmal NetBSD - also Linux-Emu.

Was den Unterschied zwischen der Verwendung eines binärpaketes und des nativen Java betrifft bin ich damit aber immer noch nicht viel schlauer. Es ist was anderes, ja - is klar. Aber ... welche Auswirkungen hat dies? Gibt es mehr zu beachten als das entweder FreeBSD oder eine Linux-Emulation benötigt wird?
 
Zuletzt bearbeitet:
was den tomcat angeht, ich habe einfach das *.tar.gz von http://tomcat.apache.org geladen, entpackt, da wo ich ihn haben will und, da es nur ein entwicklungsrechner ist, aus eclipse gestartet.
läuft super.

sorry, wenn dir das jetzt vielleicht nicht ganz weiter hilft.
 
Nur mal so zum Verständnis:

Es geht jetzt darum, ob man in Java geschriebene Software kompiliert oder als Binärpaket installiert, oder ? Es geht nicht darum, ob das Java-SDK kompiliert wird ? Wüßte nämlich nicht, daß es das irgendwo im Quellcode gäbe (SUN sträubt sich da ja).

Unter FreeBSD gab es doch mal Bestrebungen, ein eigenes SDK zu entwickeln, daß 100% kompatibel ist. Habe aber keine Ahnung wie weit das gediehen ist.
 
CAMISOLITE schrieb:
Nur mal so zum Verständnis:

Es geht jetzt darum, ob man in Java geschriebene Software kompiliert oder als Binärpaket installiert, oder ? Es geht nicht darum, ob das Java-SDK kompiliert wird ?
Nein. Weder ... noch ...
Es geht darum ob man als runtime environment für Tomcat unter NetBSD die Java-Linux-RPM von SUN mit Linux-Emulation verwendet oder hierfür doch besser ein natives Java anhand dieser Anleitung strickt: http://wiki.bsd-crew.de/index.php/Native_Java_unter_NetBSD

Wobei es mir auch noch darum geht ob diese Anleitung noch aktuell ist oder ob dem etwas hinzuzufügen wäre. Beziehungsweise ob jemand weitere Informationen/Links nennen kann die das Vorgehen noch etwas detailierter beschreiben.
CAMISOLITE schrieb:
Wüßte nämlich nicht, daß es das irgendwo im Quellcode gäbe (SUN sträubt sich da ja).
Der Quellcode kann bei SUN heruntergeladen werden. Anhand eines Patch den es hier gibt http://www.eyesbeyond.com/freebsddom/java/ kann man daraus wohl ein natives Java unter BSD erzeugen. Allerdings darf dieses nicht als binäres Paket verteilt werden. Da gibt es wohl entsprechende Lizenzbestimmungen. Warum die sich da so anpi... äh ... anstellen weiss ich aber auch nicht.
CAMISOLITE schrieb:
Unter FreeBSD gab es doch mal Bestrebungen, ein eigenes SDK zu entwickeln, daß 100% kompatibel ist. Habe aber keine Ahnung wie weit das gediehen ist.
Das wusste ich nicht. Egal. ICH WILL ES JETZT SOFORT FÜR NETBSD NATIV HABEN!!! :grumble:
 
rbrinkmo schrieb:
Nein. Weder ... noch ...
Es geht darum ob man als runtime environment für Tomcat unter NetBSD die Java-Linux-RPM von SUN mit Linux-Emulation verwendet oder hierfür doch besser ein natives Java anhand dieser Anleitung strickt: http://wiki.bsd-crew.de/index.php/Native_Java_unter_NetBSD

Wenn ich es richtig sehe, dann brauchst Du für dieses native Java trotzdem noch die Linux-Emulation, richtig ? Ist die für die Laufzeit wichtig oder nur für den Kompiliervorgang ? Wenn ersteres, dann ist es für mich nicht nativ und der Vorteil des Selberkompilierens sehr fragwürdig. Korrigiert mich, wenn ich was falsch verstanden habe.

rbrinkmo schrieb:
Der Quellcode kann bei SUN heruntergeladen werden. Anhand eines Patch den es hier gibt http://www.eyesbeyond.com/freebsddom/java/ kann man daraus wohl ein natives Java unter BSD erzeugen. Allerdings darf dieses nicht als binäres Paket verteilt werden. Da gibt es wohl entsprechende Lizenzbestimmungen. Warum die sich da so anpi... äh ... anstellen weiss ich aber auch nicht.
Das wusste ich nicht. Egal. ICH WILL ES JETZT SOFORT FÜR NETBSD NATIV HABEN!!! :grumble:

Warum eigentlich ? Siehe meine Ausführungen oben, falls zutreffend. Gibt es dann deutliche Performancegewinne ? Bedenken sollte man auch, daß man mit dem Patch immer nur die Version nativ bekommt, die vom Patch unterstützt ist. Wie ich gelesen habe, wird 1.5 noch nicht unterstützt.



Das alles in Kombination bringend, stellt sich mir die grundsätzliche Frage, ob der (Mehr-) Aufwand für die mutmaßlich native (?) Installation in einem ökonomisch vertretbaren Verhältnis zum daraus resultierenden technischen oder qualitativen Vorteil steht.

Du solltest - insbesondere im Hinblick auf die CeBIT - folgende zwei Fragen eindeutig mit ja beantworten können:

1. Ist ein signifikanter Performancegewinn der mutmaßlich nativen Installation gegenüber der reinen Emulationsinstallation messbar oder zu erwarten ?

2. Ist ein signifikant stabileres Laufzeitverhalten der mutmaßlich nativen Installation gegenüber der reinen Emulationsinstallation erkennbar oder zu erwarten ?



Die FreeBSD-Implementierung war seinerzeit übrigens für JDK 1.3 vorgesehen (da war aber 1.4.x schon aktuell).
 
CAMISOLITE schrieb:
Wenn ich es richtig sehe, dann brauchst Du für dieses native Java trotzdem noch die Linux-Emulation, richtig ? Ist die für die Laufzeit wichtig oder nur für den Kompiliervorgang ?
Genau das ist die Frage die ich im Thread 9 auch gestellt habe.

CAMISOLITE schrieb:
Wenn ersteres, dann ist es für mich nicht nativ und der Vorteil des Selberkompilierens sehr fragwürdig. Korrigiert mich, wenn ich was falsch verstanden habe.
Nö, würde ich in dem Fall genauso sehen.

CAMISOLITE schrieb:
Warum eigentlich ? Siehe meine Ausführungen oben, falls zutreffend. Gibt es dann deutliche Performancegewinne ?
Das würde mich halt auch interessieren.

CAMISOLITE schrieb:
Bedenken sollte man auch, daß man mit dem Patch immer nur die Version nativ bekommt, die vom Patch unterstützt ist. Wie ich gelesen habe, wird 1.5 noch nicht unterstützt.
Für 1.5 liegt der Patch nur in einer Beta-Version vor. Unterstützung ist eh so eine Sache. Es wird ja darauf hingewiesen, dass die Patches in einer Produktivumgebung auf eigenes Risiko verwendet werden.

CAMISOLITE schrieb:
Das alles in Kombination bringend, stellt sich mir die grundsätzliche Frage, ob der (Mehr-) Aufwand für die mutmaßlich native (?) Installation in einem ökonomisch vertretbaren Verhältnis zum daraus resultierenden technischen oder qualitativen Vorteil steht.

Du solltest - insbesondere im Hinblick auf die CeBIT - folgende zwei Fragen eindeutig mit ja beantworten können:

1. Ist ein signifikanter Performancegewinn der mutmaßlich nativen Installation gegenüber der reinen Emulationsinstallation messbar oder zu erwarten ?

2. Ist ein signifikant stabileres Laufzeitverhalten der mutmaßlich nativen Installation gegenüber der reinen Emulationsinstallation erkennbar oder zu erwarten ?
Darauf hätte ich auch gern eine Antwort. Nicht nur in hinblick auf die CeBIT sondern grundsätzlich.
Derzeit tendiere ich dazu die Linux-Emu zu verwenden. Scheint mir bisher das einfachste Vorgehen. Die Dokus die ich bisher dazu gelesen habe lassen auch nicht gerade vermuten, dass es hier Stabilitäts- oder Performanceprobleme gibt.
Zudem greift ja keine grosse Anzahl an Anwender auf die Applikation zu.

CAMISOLITE schrieb:
Die FreeBSD-Implementierung war seinerzeit übrigens für JDK 1.3 vorgesehen (da war aber 1.4.x schon aktuell).
Kannst du mir aus dem Stehgreif sagen ob das weiter verfolgt wird. Oder wurde das Projekt inzwischen eingestellt? Eine Version hinterher zu hinken wäre ja nicht so dramatisch. Insbesondere wenn es dann unter der BSD-Lizenz ohne irgendeine Emu einfach zu installieren und somit out of the box nutzbar wäre.
 
rbrinkmo schrieb:
Kannst du mir aus dem Stehgreif sagen ob das weiter verfolgt wird. Oder wurde das Projekt inzwischen eingestellt? Eine Version hinterher zu hinken wäre ja nicht so dramatisch. Insbesondere wenn es dann unter der BSD-Lizenz ohne irgendeine Emu einfach zu installieren und somit out of the box nutzbar wäre.

Es war glaube ich so um 2003 herum und stand irgendwo im Netz oder sogar in der c't. Seitdem habe ich da nichts mehr von gehört. Und da sich die FreeBSD-Mannen ja auch sehr für derlei Patches interessieren, gehe ich ganz stark davon aus, daß das eingeschlafen ist. Ich bin sogar fast der Meinung, irgendwo mal vernommen zu haben, daß - wie könnte es anders sein - SUN etwas Ärger gemacht hat, oder so.

Für NetBSD auf der CeBIT: Wir wollen produktiv einsetzbare Software zeigen, keinen Schrott. Mein Votum deshalb pro Emu ! Ich stecke nicht so tief in der Technik drin, aber AFAIK ist die Linux-Emu doch so etwas wie ein API-Wrapper, ähnlich WINE oder XEN, so Du denn das miteinander vergleichen willst. Die Performanceverluste sollten dann doch in einem Bereich liegen, der vernachlässigbar ist.

Ich werde mich nach der CeBIT vielleicht mal näher mit dem Thema Java unter NetBSD beschäftigen, dann können wir uns da nochmal en detail austauschen. Momentan habe ich dafür jedoch keine Kapazitäten.
 
Zurück
Oben