|
|
Zeile 1: |
Zeile 1: |
− | Hier gibt es fertige Pakete für die gängigsten Linux-Distributionen und andere Unix-Derivate. Wenn ihr Linux verwenden wollt und falls ihr Linux noch nicht auf eurem Rechner installiert habt, könnt ihr einfach [[Opalix]] verwenden, es liefert euch eine komplette Linuxumgebung, ohne es dauerhaft installieren zu müssen.
| + | Big help, big help. And superlative news of crouse. |
− | | |
− | Falls ihr eine Distribution einsetzt, die hier nicht aufgeführt ist, und gerne ein Paket kompilieren würdet, euch aber nicht so ganz sicher seid, wie das geht, dann wendet euch an <email>opalix@freitagsrunde.org</email>. Wir helfen euch gerne!
| |
− | | |
− | Allerdings muss man leider auch anmerken, dass der Opal-Buildprozess sehr schlecht organisiert ist. So wird z.B. nicht zwischen Kompilation- und Installationsphase unterschieden und die generierten Scripte unterstützen DESTDIR nicht, was aber eigentlich eine zwingende Voraussetzung für ein vernünftiges Packaging in den Distributionen ist. Diese Probleme machen es nicht einfach, Pakete zu erstellen.
| |
− | | |
− | <del>
| |
− | Und noch ein Bad-Code-Hinweis: Das gesamte System, angefangen vom build-Prozess bis hin zum Opalinterpreter, geht hart davon aus, auf einem 32-Bit System zu laufen. D.h. bei Hashfunktionen wird darauf vertraut, dass es einen Überlauf nach 32 Bit gibt. <b>Daher ist es unmöglich Opal auf einem 64-Bit-System zum Laufen zu bekommen</b>. Einzig in einem 32-Bit chroot ist die Verwendung möglich.
| |
− | </del>
| |
− | OPAL kann mit ein Wenig Mühe unter 64 Bit zum Laufen gebracht werden. Tatsächlich ist das eigentliche Problem die Verwendung der .inter und .opt Dateien aus einem vorherigen 32 Bit Build. Das Buildsystem geht davon aus, dass die schon funktionieren würden, was allerdings nicht klappt, da sie effektiv ein Dump der 32 Bit Datenstrukturen sind. An dem Problem wird gearbeitet.
| |
− | | |
− | = Hinweis zum Selber-Kompilieren =
| |
− | | |
− | Mit aktuellen gcc/glibc-Versionen (>=4.0) kompiliert OPAL <= 2.3j nicht mehr, da eine obsolete Funktion entfernt wurde. Ab Version 2.3k funktioniert es wieder.
| |
− | | |
− | Dirk Reckmann und Stephan Frank (ÜBB Gruppe), haben uns einen [http://opalix.freitagsrunde.org/rpm/patches/CLK_TCK.patch Patch] für die älteren Quellen zum Übersetzen des OCS mit gcc 4.1 zur Verfügung gestellt.
| |
− | Diesen könnt ihr einfach einspielen durch:
| |
− | cd <OPAL_UNPACK_DIRECTORY>/ocs
| |
− | <nowiki>wget http://opalix.freitagsrunde.org/rpm/patches/CLK_TCK.patch</nowiki>
| |
− | patch -p0 < CLK_TCK.patch
| |
− | | |
− | = SuSE =
| |
− | Das Paket installiert OPAL nach <code>/opt/ocs</code>. Damit ihr <code>oasys</code> und <code>ocs</code> benutzen könnt, müsst ihr die folgende Zeile in die Datei <code>$HOME/.bashrc</code> eintragen:
| |
− | | |
− | export PATH=/opt/ocs/bin:$PATH
| |
− | | |
− | ==Aktuelle Versionen==
| |
− | Unsere Pakete für aktuelle Versionen von SuSE (siehe auch [[Opal_f%C3%BCr_Linux#C_Compiler_fehlt | Bekannte Probleme/Lösungen]] weiter unten).
| |
− | | |
− | * SuSE 11.0: [http://opalix.freitagsrunde.org/rpm/opal_suse11.00.tar.gz opal_suse11.00.tar.gz] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme]) Vielen Dank an Rene Waidt
| |
− | * SuSE 10.1: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.i386.suse10.1.rpm opal-2.3j-1.i386.suse10.1.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme])
| |
− | * SuSE 10.0: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.i386.suse10.0.rpm opal-2.3j-1.i386.suse10.0.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme])
| |
− | | |
− | == Alte Versionen ==
| |
− | Zusätzlich zu den Paketen für aktuelle SuSE Versionen gibt es auch noch Pakete für ältere Versionen auf dem Server.
| |
− | | |
− | * SuSE 9.2: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.i586.suse9.2.rpm opal-2.3j-1.i586.suse9.2.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme])
| |
− | * SuSE 9.1: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.i386.rpm opal-2.3j-1.i386.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme])
| |
− | * SuSE 9.0: [http://opalix.freitagsrunde.org/rpm/alte_versionen/opal-2.3h-2.i686.suse9.0.rpm opal-2.3h-2.i686.suse9.0.rpm] ([http://opalix.freitagsrunde.org/rpm/alte_versionen/MD5SUMS Prüfsumme])
| |
− | | |
− | = Fedora =
| |
− | Das Paket installiert OPAL nach <code>/opt/ocs</code>, damit ihr an der Shell die Kommandos benutzen könnt, müsst ihr die folgende Zeile in eure <code>.bashrc</code> eintragen:
| |
− | | |
− | export PATH=/opt/ocs/bin:$PATH
| |
− | | |
− | Laut Berichten gibt es Probleme zwischen SELinux und dem Opalinterpreter oasys. Vermutlich hilft hier ein Deaktivieren von SELinux für Opal bzw. das Erstellen von korrekten Regeln.
| |
− | * '''Fedora Core 6''': <br> [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.fc6.i386.rpm opal-2.3j-1.fc6.i386.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme]) Vielen Dank an Dennis Schickhaus.
| |
− | * '''Fedora Core 5''': <br> [http://opalix.freitagsrunde.org/rpm/opal-2.3k-1.fc5.i386.rpm opal-2.3k-1.fc5.i386.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme]) Vielen Dank an Christoph Höger. <br> [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.fc5.i386.rpm opal-2.3j-1.fc5.i386.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme]) Vielen Dank an Dennis Schickhaus.
| |
− | * '''Fedora Core 3''': <br> [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.FC-3.i386.rpm opal-2.3j-1.FC-3.i386.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme]) Vielen Dank an Christoph Höger.
| |
− | | |
− | = Andere RPM-basierte Distributionen =
| |
− | | |
− | * Quellpaket: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.src.rpm opal-2.3j-1.src.rpm] ([http://opalix.freitagsrunde.org/rpm/MD5SUMS Prüfsumme])
| |
− | | |
− | Wenn Ihr Opal auf einer anderen RPM-basierten Distribution neukompilieren wollt, könnt Ihr das SRPM-Paket benutzen. Einfach an der Shell
| |
− | | |
− | rpmbuild --rebuild --target i386 opal-2.3j-1.src.rpm
| |
− | | |
− | ausführen. Ihr benötigt dabei die Pakete <code>tcl-devel</code>, <code>tk-devel</code>, <code>xfree86-devel</code>, <code>flex</code> und <code>readline-devel</code>. Wenn ihr neue Pakete baut, wäre es nett, wenn ihr sie hier anderen zur Verfügung stellt. Sagt einfach unter <email>opalix@freitagsrunde.org</email> Bescheid, wo sie zu finden sind.
| |
− | | |
− | Alternativ könnt ihr auch das Paket komplett neu aus den Sourcen erstellen. Dazu benötigt ihr das so genannte spec-file. Falls ihr Fragen habt, wie ihr damit ein Paket kompiliert, wendet euch einfach an <email>opalix@freitagsrunde.org</email>.
| |
− | | |
− | * spec file: [http://opalix.freitagsrunde.org/rpm/opal-2.3j-1.spec opal-2.3j-1.spec]
| |
− | | |
− | = Debian =
| |
− | Das Paket für Debian enthält die <strike>aktuelle</strike> Version 2.3j.
| |
− | Es gibt ein <code>apt-get</code> Repository, das man mit folgenden Zeilen in der Datei /etc/apt/sources.list einstellen kann:
| |
− | <pre>
| |
− | deb http://opalix.freitagsrunde.org/debian-rep ./
| |
− | deb-src http://opalix.freitagsrunde.org/debian-rep ./
| |
− | </pre>
| |
− | Das Package heißt ocs und lässt sich mit
| |
− | <pre>
| |
− | sudo apt-get install ocs
| |
− | </pre>
| |
− | installieren.
| |
− | Vielen Dank an Marco Ziech für seine Zeit und Mühe, das Paket und Repository zu erstellen!
| |
− | !Achtung, das Paket verträgt sich nicht mit dem Paket cscope, da beide /usr/bin/ocs ausliefern, cscope deinstallieren oder Paket fixen!
| |
− | | |
− | = Ubuntu =
| |
− | Prinzipiell könnt ihr das [http://opalix.freitagsrunde.org/debian-rep/ocs_2.3j-1_i386.deb Paket für Debian] unter Ubuntu einsetzen. In Einzelfällen kann es zu Problemen kommen, die ein [[Opal unter Ubuntu kompilieren|Kompilieren aus den Quellen]] erforderlich machen. Generell ist das Verwenden des Pakets vorzuziehen, da das Selbst-Kompilieren nicht immer einfach ist. In jedem Fall ist es erforderlich, das Paket "build-essential" installiert zu haben.
| |
− |
| |
− | Allerdings ist zu beachten das das Debian Paket bei dem Versuch es auf einem 64-Bit System zu installieren, einen Fehler ausgibt, da es für ein 32-bit System gedacht ist.(wrong architecture).
| |
− | | |
− | * '''8.10 (Intrepid Ibex)''': Das manuelle herunterladen und installieren des Debian-Pakets funktioniert problemlos. Es sollten jedoch vorher alle Abhängigkeiten (siehe unten) installiert worden sein.
| |
− | * '''8.04 LTS (Hardy Heron)''': Das manuelle herunterladen und installieren des Debian-Pakets funktioniert problemlos. Es sollten jedoch vorher alle Abhängigkeiten (siehe unten) installiert worden sein.
| |
− | * '''7.04 (Feisty Fawn)''': Das manuelle herunterladen und installieren des Debian-Pakets funktioniert problemlos. Es sollten jedoch vorher alle Abhängigkeiten (siehe unten) installiert worden sein.
| |
− | * '''6.10 (Edgy Eft)''': Das Paket für Debian, bezogen über das Repository, funktioniert gut. Das Selbstkompilieren der Version 2.3k verlief fehlerlos.
| |
− | * '''6.06 (Dapper Drake)''': Das Paket für Debian funktioniert definitiv unter Dapper Drake. Es ist dem Selbstkompilieren vorzuziehen, da es mehrere Berichte über Compiler-Inkompatibilitäten unter Dapper Drake gibt.
| |
− | * '''5.10 (Breezy Badger)''': Da es anscheinend Probleme mit den Paketen von Debian unter Ubuntu 5.10 gibt, ist hier anscheinend eine Installationen aus den Quellen nötig. Nähere Informationen findet ihr auf der Seite [[Opal unter Ubuntu kompilieren]].
| |
− | | |
− | == Paket Installation ==
| |
− | Es gibt zwei Möglichkeiten, dass Paket für Debian zu Installieren.
| |
− | | |
− | Entweder man lädt das Paket manuell herunter und installiert es mit dpkg:
| |
− | <pre>
| |
− | wget http://opalix.freitagsrunde.org/debian-rep/ocs_2.3j-1_i386.deb
| |
− | sudo dpkg -i ocs_2.3j-1_i386.deb
| |
− | </pre>
| |
− | | |
− | Nutzer mit einem 64-Bit System können Probleme beim Installieren haben. Abhilfe schafft es die Überprüfung der richtigen System Architektur zu überspringen. Achtung: Das überspringen der Überprüfung garantiert nicht das das Programm einwandfrei läuft. In den meisten Fällen wird OPAL, wenn es auf diese Weise installiert wird, nicht funktionieren. Meist müssen auch noch weitere Abhängigkeiten installiert werden. [http://wiki.ubuntuusers.de/64bit-Architektur#32-Bit-Programme-erzwingen Weite Infos und zur Installation ] von 32-bit Programmen unter 64-bit
| |
− | <pre>
| |
− | wget http://opalix.freitagsrunde.org/debian-rep/ocs_2.3j-1_i386.deb
| |
− | sudo dpkg -i --force-architecture ocs_2.3j-1_i386.deb
| |
− | </pre>
| |
− | | |
− | Alternativ kann man wie bei Debian das Repository
| |
− | <pre>
| |
− | deb http://opalix.freitagsrunde.org/debian-rep ./
| |
− | deb-src http://opalix.freitagsrunde.org/debian-rep ./
| |
− | </pre>
| |
− | | |
− | hinzufügen.
| |
− | | |
− | '''Per GUI''':
| |
− | * Startleiste -> System -> Systemverwaltung -> Synaptic-Paketverwaltung starte
| |
− | * In der Synaptic-Paketverwaltung im Menu Einstellungen -> Paketquellen
| |
− | * Im Paketquellen-Fenster auf hinzufügen und benutzerdefiniert anklicken
| |
− | * Repository-Zeilen nacheinander eintragen und FERTIG
| |
− | | |
− | '''Zu Fuß''':
| |
− | * Datei /etc/apt/sources.list im Editor öffnen
| |
− | * Repository-Zeilen (siehe oben) in die Datei eintragen und FERTIG
| |
− | | |
− | Nach diesem Prozedere muß Opal noch installiert werden:
| |
− | <pre>
| |
− | user@ubuntulinux > sudo apt-get install ocs
| |
− | </pre>
| |
− | | |
− | Vielleicht muß vorher noch ein apt-get update gemacht werden:
| |
− | <pre>
| |
− | user@ubuntulinux > sudo apt-get update
| |
− | </pre>
| |
− | | |
− | | |
− | FERTIG.
| |
− | | |
− | Sollte es Probleme geben, stellt bitte sicher, dass die zur Funktion notwendigen Pakete installiert sind:
| |
− | <pre>
| |
− | apt-get install gcc make libc6-dev tk8.4 tcl8.4 libreadline5-dev libncurses5-dev flex-old
| |
− | </pre>
| |
− | | |
− | = Gentoo =
| |
− | Ein Ebuild gibt's aktuell im Overlay <s>rbu</s> betagarden:
| |
− | # emerge -av layman # (Dort den Anweisungen folgen, um Layman auch einzurichten)
| |
− | # layman -f
| |
− | # layman -a betagarden
| |
− | # emerge dev-lang/opal
| |
− | | |
− | Da das Ebuild maskiert ist, sind an dieser Stelle eventuell noch weitere Schritte nötig; die Installation maskierter Ebuilds ist hier erklärt: [http://www.gentoo.org/doc/de/handbook/handbook-x86.xml?part=3&chap=3#doc_chap3 Nutzung maskierter Pakete].
| |
− | | |
− | Seit Version 2.3n unterstützt Opal nun offiziell auch 64-Bit-Umgebungen.
| |
− | | |
− | = FreeBSD =
| |
− | Es gibt einen FreeBSD-Port um OCS kompilieren zu können:
| |
− | | |
− | $ su
| |
− | # cd /usr/ports/lang/ocs
| |
− | # make install clean
| |
− | | |
− | Alternativ kann man sich ein bereits kompiliertes Paket installieren
| |
− | | |
− | $ su
| |
− | # pkg_add -r ocs
| |
− | | |
− | Sowohl Kompilierer als auch Interpreter funktionieren einwandfrei.
| |
− | | |
− | | |
− | = Opalix in Vier Schritten aus Windows aus installieren =
| |
− | | |
− | Diese Methode ist sehr hilfreich für diejenigen die sich mit Linuxinstallationen, Partitionsmanagement und Bootloadern nicht auskennen!
| |
− | | |
− | '''Schritt 1:'''
| |
− | | |
− | Letztes development-release von Wubi [http://wubi-installer.org/devel/minefield/Wubi-9.04-rev134.exe herunterladen]
| |
− | | |
− | '''Schritt 2:'''
| |
− | | |
− | Opalix Live-CD ISO [http://opalix.freitagsrunde.org/iso/Opalix2009.iso herunterladen] (Wubi und ISO müssen sich im gleichen Ordner befinden!)
| |
− | | |
− | '''Schritt 3:'''
| |
− | GANZ WICHITG: Internetverbindung deaktivieren/trennen!
| |
− | | |
− | '''Schritt 4:'''
| |
− | Wubi ausführen. Die Sprache muss die gleiche sein wie die des Windows OS.
| |
− | | |
− | Desktop Enviroment: Ubuntu (da Opalix auf Ubuntu basiert)
| |
− | | |
− | Dem Installer folgen und beim Neustart im Bootmanager Ubuntu wählen.
| |
− | | |
− | '''Fertig'''
| |
− | | |
− | | |
− | = Bekannte Probleme/Lösungen =
| |
− | | |
− | == C Compiler fehlt ==
| |
− | '''Symptom''': Ihr erhaltet eine Fehlermeldung, die ungefähr so aussieht:
| |
− | | |
− | checking Binom.sign
| |
− | checking Binom.impl
| |
− | compiling Binom.impl
| |
− | /opt/ocs/lib/oasys/ccompiler: line 17: /usr/local/bin/gcc: No such file or directory
| |
− | /opt/ocs/lib/oasys/ccompiler: line 17: exec: /usr/local/bin/gcc: cannot execute: No such file or directory
| |
− | ERROR [C compiler]: /opt/ocs/lib/oasys/ccompiler exited abnormally
| |
− | aborted
| |
− | | |
− | Auf einigen neueren Systemen (Ubuntu 5.10, SuSE 10.0) kommt es zu noch nicht genau geklärten Problemen von OCS mit der [[WikiPedia:GNU_Compiler_Collection|Gnu Compiler Collection (gcc)]]. OCS benötigt den C Compiler (ggf. zusätzlich installiern) und kann ihn dennoch nicht finden, so dass es zu diesem Fehler kommt. Wir haben noch nicht herausgefunden, woher der Fehler genau rührt, da er nicht auf allen Systemen reproduzierbar ist, aber es gibt einen Workaround.
| |
− | | |
− | '''Lösung/Workaround''': Das Paket gcc installieren. Eventuell muss noch ein Symlink gesetzt werden, damit Opal den Compiler auch findet.
| |
− | ln -s `which gcc` /usr/local/bin/gcc # als root
| |
− | | |
− | 2.Workaround: einfach mal im Homeverzeichnis die Dateien (*.impl und *.sign speichern) und dort dann "oasys" ausführen.
| |
− | | |
− | == Libraries fehlen ==
| |
− | | |
− | | |
− | $ oasys
| |
− | oasys version 1.1e (ocs version 2.3j), (c) 1989-2001 The OPAL Group, TU Berlin
| |
− | > a WhatsThat.sign
| |
− | loading WhatsThat.sign
| |
− | loading WhatsThat.impl
| |
− | >f WhatsThat.impl
| |
− | WhatsThat.impl>e WhatsThat(2)
| |
− | starting evaluator process
| |
− | /usr/bin/ld: crti.o: No such file: No such file or directory
| |
− | collect2: ld returned 1 exit status
| |
− | evaluator: cannot create transient shared object `/tmp/file7HXogh.so' for `./OCS/WhatsThat.o'
| |
− | connection lost
| |
− | | |
− | Lösung: Paket '''build-essential''' installieren, z.B. mittels
| |
− | apt-get install build-essential
| |
− | | |
− | ----
| |
− | | |
− | Falls ihr auf eine Fehlermeldung stoßt, dass einige libs fehlen, aber ihr wisst, dass diese installiert sind,
| |
− | schaut einmal auf die Versionsnummern.
| |
− | Da die Versionsnummer zum Teil ein Bestandteil des Namens ist, fand oasys zB bei mir die gewünschte lib nicht, weil ich bereits eine neuere Version installiert hatte.
| |
− | Abhilfe schafft dann ein mehr oder weniger dreckiger hack:
| |
− | Sucht das Verzeichnis in dem sich die Lib befindet.
| |
− | ln -s <eure installierte neue lib> <die alte lib nach der opal sucht>
| |
− | erstellt einen Link mit dem Namen der lib die oasys sucht und zeigt auf die neue Version der lib.
| |
− | Somit kann oasys, wenn es die Alte versucht anzusprechen mit der Neuen arbeiten.
| |
− | Ich kann nicht versprechen, dass dies immer klappt, aber einen Versuch ist es Wert.
| |
− | Und nicht vergessen! Diese Links sofort löschen, wenn es nicht klappt! Ansonsten müllt ihr euch euren Rechner zu ;)
| |
− | | |
− | [[Kategorie:Opal]]
| |