Opal für Linux/Unix: Unterschied zwischen den Versionen
(→SuSE 10.1: Credit where credit is due.) |
(→Benötigte Pakete: Paketnamen für Dapper angegeben) |
||
Zeile 112: | Zeile 112: | ||
==== Benötigte Pakete ==== | ==== Benötigte Pakete ==== | ||
+ | |||
+ | ==== Breezy 5.10 ==== | ||
tk8.3-dev, libreadline4-dev, gcc, flex | tk8.3-dev, libreadline4-dev, gcc, flex | ||
+ | |||
+ | ==== Dapper 6.06 ==== | ||
+ | tk8.3-dev, libreadline'''5'''-dev, gcc, flex | ||
+ | |||
+ | |||
Paketinstallation: | Paketinstallation: |
Version vom 2. Juli 2006, 19:12 Uhr
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.
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 opalix@freitagsrunde.org. 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.
Inhaltsverzeichnis
Linux
SuSE
Das Paket installiert OPAL nach /opt/ocs
. Damit ihr oasys
und ocs
benutzen könnt, müsst ihr die folgende Zeile in die Datei $HOME/.bashrc
eintragen:
export PATH=/opt/ocs/bin:$PATH
SuSE 10.1
Die aktuelle Version (2.3j) von Opal.
- RPM für i386: opal-2.3j-1.i386.suse10.1.rpm (Prüfsumme)
Vielen Dank an dieser Stelle an Dirk Reckmann und Stephan Frank (ÜBB Gruppe), die uns einen Patch zum Übersetzen des OCS mit gcc 4.1 zur Verfügung gestellt haben!
SuSE 10.0
Die aktuelle Version (2.3j) von Opal.
- RPM für i386: opal-2.3j-1.i386.suse10.0.rpm (Prüfsumme)
SuSE 9.3
Leider haben wir für SuSE 9.3 keine fertigen Pakete. Falls Du welche kompilierst, stell sie uns bitte zur Verfügung!
SuSE 9.2
2.3j
Dies ist die aktuelle Version von Opal.
- RPM für i586: opal-2.3j-1.i586.suse9.2.rpm (Prüfsumme)
2.3i
- RPM für i386: opal-2.3i-1.i386.suse9.2.rpm (Prüfsumme)
- RPM für i586: opal-2.3i-1.i586.suse9.2.rpm (Prüfsumme)
SuSE 9.1
Dies ist die aktuelle Version von Opal.
- RPM für i386: opal-2.3j-1.i386.rpm (Prüfsumme)
SuSE 9.0
Für SuSE 9.0 haben wir leider nur ein veraltetes Paket (Version 2.3h), da uns kein System mit SuSE 9.0 zum Neukompilieren zur Verfügung steht. Dieser Version fehlt der Bugfix zum Kompilieren mehrerer Signaturen unter Linux, man kann sie also nur für einfache Programme verwenden. Falls jemand noch SuSE 9.0 benutzt, wären wir dankbar, wenn er ein Paket für uns kompilieren würde.
- Paket für i686 (ab P-II, Athlon, etc.): opal-2.3h-2.i686.suse9.0.rpm (Prüfsumme)
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 Gnu Compiler Collection (gcc). OCS benötigt den C Compiler und kann ihn 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
Fedora
Das Paket installiert OPAL nach /opt/ocs
, damit ihr an der Shell die Kommandos benutzen könnt, müsst ihr die folgende Zeile in eure .bashrc
eintragen:
export PATH=/opt/ocs/bin:$PATH
Fedora Core 4
Ein Paket für Fedora Core 4 ist in Vorbereitung.
Ich konnte keine Pakete bauen, da OCS sich nicht an die autoconf-Vorgaben hält. --Felix 16:48, 27. Okt 2005 (CEST)
Fedora Core 3
Für Fedora Core 3 haben wir dank Christoph Höger ein Package der aktuellen Version 2.3j. Vielen Dank, Christoph!
- RPM für i386: opal-2.3j-1.FC-3.i386.rpm (Prüfsumme)
Andere RPM-basierte Distributionen
- Quellpaket: opal-2.3j-1.src.rpm (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 tcl-devel
, tk-devel
, xfree86-devel
, flex
und readline-devel
. Wenn ihr neue Pakete baut, wäre es nett, wenn ihr sie hier anderen zur Verfügung stellt. Sagt einfach unter opalix@freitagsrunde.org 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 opalix@freitagsrunde.org
- spec file: opal-2.3j-1.spec
Debian
Das Paket für Debian enthält die aktuelle Version 2.3j.
Es gibt ein apt-get
Repository:
deb http://opalix.freitagsrunde.org/debian-rep ./ deb-src http://opalix.freitagsrunde.org/debian-rep ./
Das Package heißt ocs und lässt sich mit
sudo apt-get install ocs
installieren. Vielen Dank an Marco Ziech für seine Zeit und Mühe, das Paket und Repository zu erstellen!
Ubuntu
Da es anscheinend Probleme mit den Paketen von Debian unter Ubuntu 5.10 "The Breezy Badger" gibt, wird hier erstmal die Quellcode-Installation beschrieben. Die Installation muß als root ausgeführt werden.
Da Ubuntu standardmäßig den root-Account "deaktiviert" hat, könnt Ihr mit einem vorangestellten sudo die Befehle als "root" ausführen. Wer das Anmelden als root zulassen will oder mit su sich temporär im xterm root-Rechte geben will, sollte erst dies lesen. Wenn es das ist was Du willst und Du wirklich weißt was Du machst, ließt Du hier weiter. Es wird dringend abgeraten den root-Account zu aktivieren.
Benötigte Pakete
Breezy 5.10
tk8.3-dev, libreadline4-dev, gcc, flex
Dapper 6.06
tk8.3-dev, libreadline5-dev, gcc, flex
Paketinstallation:
- xterm oder Konsole öffnen
- Apt-get aufrufen:
apt-get install tk8.3-dev apt-get install libreadline4-dev apt-get install gcc apt-get install flex
oder
apt-get install tk8.3-dev libreadline4-dev gcc flex
OCS Compilierung
Unter http://uebb.cs.tu-berlin.de/opal/
findet Ihr die Quellen und die Dokumentation. $VERSION ist die Version des Opalpakets (aktuell dürfte das 2.3j sein). Wir nehmen mal an Ihr habt sie in Eurem Homeverzeichnis.
- cd ~/
- tar xvjf ocs-$VERSION-src.tar.bz2
- tar xvjf gunzip ocs-$VERSION-doc.tar.bz2
- cd /usr/src
- mv ~/ocs-$VERSION-src ./
- cd ocs
- ./configure
- make install 2>&1 > log
- cd /usr/local
- mv ~/ocs-$VERSION-doc ./
- ln -s /usr/local/ocs-$VERSION /usr/local/ocs
Es kann ein Weilchen dauern, bei mir hat es ungefähr 5-10 Minuten gedauert(Pentium M 1,6 GHz, 512 MB RAM).
FERTIG.
Bei Problemen
Wenn es Probleme gibt, stellt sicher, dass zur Funktion notwendige Pakete installiert sind, mit folgendem Befehl:
apt-get install gcc make libc6-dev tk8.3-dev libreadline4-dev gcc flex
Ohne erneutes Quellcodekompilieren
Also hier die Variante für Ubuntu 5.10 mit dem Debian Paket von Marco ohne erneutes Quellcodekompilieren:
sudo gedit /etc/apt/sources.list
dort diese beiden Zeilen hinzufügen:
deb http://opalix.freitagsrunde.org/debian-rep ./ deb-src http://opalix.freitagsrunde.org/debian-rep ./
dann speichern, updaten
sudo apt-get update
und die Pakete installieren:
sudo apt-get install ocs
Jetzt nur noch:
sudo apt-get install gcc libc6-dev
und ihr habt es geschafft.
Ach ja, alle auftretenden Fragen mit 'y' beantworten und am Ende könnt ihr die beiden hinzugefügten Zeilen aus der /etc/apt/sources.list wieder entfernen/ausklammen. Die Pakete: tk8.3-dev, libreadline4-dev und flex werden bei dieser Variante nicht benötigt.
Gentoo
Ebuilds von Opal und der Opal-Dokumentation finden sich unter [1].
Hinweise zur Installation des Opal-Ebuilds
Hierbei muss das Gentoo-System angepasst werden.
Innerhalb von /etc/make.conf
ist der Eintrag der PORTDIR_OVERLAY
-Variable nötig. Dafür ist ein eigenes Verzeichnis zu erstellen (im Allgemeinen und im Weiteren /usr/local/portage
) und der Variable zuzuordnen:
mkdir -m 755 /usr/local/portage echo 'PORTDIR_OVERLAY="/usr/local/portage"' >> /etc/make.conf
Unterhalb des Verzeichnisses /usr/local/portage
das Verzeichnis dev-lang
und darin die Verzeichnisse opal
und opaldoc
anlegen und dann in diese beiden Verzeichnisse die nötigen Ebuilds kopieren:
mkdir -m 755 /usr/local/portage/dev-lang{,/opal,/opaldoc} cp opal-2.3i.ebuild /usr/local/portage/dev-lang/opal/ cp opaldoc-2.3i.ebuild /usr/local/portage/dev-lang/opaldoc/
Da beide Ebuilds maskiert sind, sind an dieser Stelle eventuell noch weitere Schritte nötig; die Installation maskierter Ebuilds ist hier sehr gut erklärt: Maskierte Ebuilds.
Jetzt einfach:
emerge opal opaldoc
Um die neue Version von Opal (2.3j), die auch mit den neuen binutils klarkommt, zu emergen, sind folgende Schritte nötig:
cd /usr/local/portage/dev-lang/opal/ cp opal-2.3i.ebuild opal-2.3j.ebuild ebuild opal-2.3j.ebuild digest emerge opal
FreeBSD
Für all die, die OCS und Opal unter FreeBSD kompilieren wollen, gibt es eine kurze Anleitung unter: [2]; fertige Packages für 5.3-RELEASE werden bei größerer Nachfrage erstellt.