Projektgruppe 478

Installieren von GCC 3.3

Das Installieren des GCC 3.3 Compilers scheint auf einigen System komplizierter zu sein, als erwartet.
Wan-Hi hat seine Erfahrungen (für Suse 10) zusammengeschrieben - ihr habt ja die Mail bekommen. Damit das Nachzuschauen leichter fällt, ist der idente Text hier auf der Seite zu finden.
Danke, Wan-Hi!

Wenn ihr eure Erfahrungen hinzufügen möchtet, Dinge klarifizieren wollt, o.ä., meldet euch einfach bei mir (Markus); dann pack ich das dazu.

Mail von Wan-Hi, 1.Nov.05:
Hallo.

Ich hab es endlich geschafft, daß OGDF zu kompilieren und dachte mir vor lauter Freude, daß der eine oder andere, der noch im Dunkeln tappt, Infos dazu haben möchte. Es sind leider einige Verrenkungen nötig. Bei SUSE 10.0 OSS geht man dafür folgendermaßen vor:

1) Linux installieren:

Bei der Auswahl der in Selektionskategorien eingeteilten Pakete sollten folgende RPMs ausgewählt werden:
  • GCC (und alle Standard C/C++ Libraries)
  • QT und alle zur Programmierung benötigten Pakete
  • binutils
  • bison
  • flex
  • make
  • tar
  • bzip2
Nach der Installation kann man auf openSUSE.org Infos finden, wie man Package Online Repositories in Yast einbindet, damit man die neuesten Versionen von Java, Eclipse usw. erhält.

2) Vorbereitungen zur Parallelinstallation von GCC 3.3.6 (als Root):

  • gperf RPM aus dem Netz downloaden und per Yast oder rpm command ins System einbinden. Frühere Komplikationen bei der Übersetzung einer älteren GCC Version lagen am Fehlen dieses Pakets, was nicht mehr in der aktuellen openSUSE Distro enthalten ist und zwar benötigt, aber nicht als Voraussetzung aufgeführt wird.
  • Sources von GCC 3.3.6 downloaden und z.B. unter /tmp entpacken. Danach müßte folgendes Verzeichnis existieren: /tmp/gcc-3.3.6

3) Kompilierung & Installation von GCC 3.3.6 (als Root):

3.1) Konfiguration:

# su
# (pass)
# mkdir ~/gcc-3.3.6obj
# cd ~/gcc-3.3.6obj
# /tmp/gcc-3.3.6/configure --prefix=usr/share/gcc-3.3.6
Hier sollte am Schluß sowas wie "Creating Makefile..." stehen.

3.2) Kompilierung:

# make bootstrap
Treten Fehler auf, wird der Übersetzer von selber abbrechen und am Ende deren Anzahl nennen. Bei erfolgreicher Durchführung dauert es schon mal ne gute halbe Stunde oder mehr.

3.3) Installation

# make install
# cd /usr/bin
# ln ../share/gcc-3.3.6/bin/gcc gcc-3.3.6
# ln ../share/gcc-3.3.6/bin/g++ g++-3.3.6
# ln ../share/gcc-3.3.6/bin/c++ c++-3.3.6
Ab jetzt könnt ihr 'gcc' für die 4.0.2 Version und 'gcc-3.3.6' für die alternative, ältere Version nutzen. Das selbe gilt für 'g++' und 'c++'. Die Verzeichnisse /tmp/gcc-3.3.6 und ~/gcc-3.3.6obj können jetzt getrost gelöscht werden.

4) QT vorbereiten (als Root):

  • QT sollte zuerst mittels Online Update auf 3.3.29 hochgestuft werden
  • Im Verzeichnis /usr/lib/qt3/include die bereits genannten Änderungen an der entsprechenden Header Datei (qcanvas.h) durchführen

5) OGDF kompilieren (als User):

  • In eurer makeMakefile.config Datei muß g++ nun mit g++-3.3.6 ausgewechselt werden
  • makeMakefile.sh Skript ausführen
  • Danach einfach mit 'make all' kompilieren
Hoffe, damit läuft es jetzt bei allen, die SUSE verwenden.

Wan-Hi