Geschickt umschifft

Installationsprobleme

01.09.2000
Die Installation aktueller Linux-Programme läuft häufig über den "klassischen" Weg, der aus den drei Schritten ./configure, make und make install besteht. Dabei kann allerdings einiges schiefgehen, wenn etwa für das Übersetzen notwendige Pakete fehlen. Schauen wir uns die typischen Probleme an…

Beim Installieren eines Programmes aus einem tar.gz-Quelltext-Archiv ist es das Ziel, mit Hilfe eines Compilers ausführbare Programme zu erzeugen. Dazu muss der Compiler natürlich installiert sein. Da es in der Regel um C- oder C++-Programme geht, sollte also ein C-Compiler auf Ihrer Platte sein. Bei den meisten aktuellen Distributionen ist das der egcs, und so heißt auch das rpm-Paket, das ihn enthält. Der Compiler alleine reicht aber nicht aus. Beim Kompilieren wird ein sogenanntes Makefile verwendet, das die Anweisungen enthält, mit denen die Programme übersetzt werden. Damit dieses ausgeführt werden kann, muss das Dienstprogramm make installiert sein, welches sich im rpm-Paket gleichen Namens versteckt.

Um zu prüfen, ob alles notwendige Zubehör vorhanden ist, können Sie die Befehle

rpm -q egcs
rpm -q make

eingeben; rpm sollte daraufhin jeweils mit dem Paketnamen und einer Versionsnummer (z. B. egcs-1.1.2-30 und make-3.78.1-4) antworten. Fehlt hier etwas, dann suchen Sie auf der Installations-CD Ihrer Linux-Distribution nach den entsprechenden Paketen (etwa egcs-1.1.2-30.i386.rpm und make-3.78.1-4.i386.rpm und installieren diese als Administrator root über den Befehl

rpm -Uvh paketname.rpm

nach. Der erste Schritt nach dem Auspacken des Quelltext-Archivs (und Wechsel in das neue Verzeichnis) ist das Konfigurieren der Sourcen – dabei wird das Makefile erzeugt. Der Befehl dazu ist

./configure

Die beiden Zeichen am Anfang sind in der Regel notwendig, damit Ihre Shell im aktuellen Verzeichnis nach dem Skript configure sucht. Dieses Skript durchsucht nun Ihr System nach Programmen und Bibliotheken, die für die Übersetzung der neuen Software benötigt werden; wollen Sie etwa ein KDE-Programm installieren, so sind mindestens die X-Window- und KDE-Bibliothekenund die zugehörigen Include-Filesnotwendig; entsprechendes gilt für GNOME-Programme.

Fehlen die notwendigen Dateien, erhalten Sie beim Aufruf von ./configure beispielsweise Fehlermeldungen der Form

checking for X... configure: error: Can't find X includes.
Please check your installation and add the correct paths!

Die notwendigen Pakete sind im Detail:

XFree86-devel-3.3.6-20.i386.rpm
kdelibs-1.1.2-15.i386.rpm
kdelibs-devel-1.1.2-15.i386.rpm
qt-2.1.0-4.beta1.i386.rpm
qt-devel-2.1.0-4.beta1.i386.rpm
gnome-libs-1.2.0-0mdk_helix_2.i586.rpm
gnome-libs-devel-1.2.0-0mdk_helix_2.i586.rpm

Die Versionsnummern sind dabei natürlich nur beispielhaft; falls Sie auf die Anfragen rpm -q XFree86-devel, rpm -q kdelibs-devel, rpm -q gnome-libs-devel usw. die Antwort "package … is not installed" erhalten, suchen Sie einfach auf Ihrer Distributions-CD nach ähnlich benannten Paketen und installieren diese (wie oben) nach. Für KDE-Programme werden natürlich nicht die GNOME-Bibliotheken benötigt, und anders herum.

Nach der Installation sollten die Fehlermeldungen unterbleiben, die ein Fehlen von "X includes" und ähnlichem bemängeln.

KDEDIR und QTDIR

Beim Übersetzen von KDE-Programmen tritt häufig das Problem auf, dass die Umgebungsvariablen KDEDIR und QTDIR nicht oder nicht richtig gesetzt sind; dies ist z. B. bei SuSE Linux 6.2 der Fall, wenn beide Qt-Bibliotheks-Versionen (1.x und 2.x) installiert sind. Setzen Sie, wenn es Probleme beim Kompilieren gibt, QTDIR auf das richtige Verzeichnis (z. B. mit export QTDIR=/usr/lib/qt-2.1.0). Auch KDEDIR sollte richtig gesetzt sein, bei den meisten Distributionen ist der richtige Wert /opt/kde oder /usr.

Glossar

Bibliotheken

Bibliotheken enthalten standardisierte Routinen (Programmteile), die von vielen Programmen benutzt werden können: So verwenden etwa die meisten KDE-Programme den gleichen Code zum Öffnen von Dateien – es wäre nun aber Unfug, diesen Code in jedes KDE-Programm fest einzubinden: das würde dazu führen, dass der Code mehrfach im Hauptspeicher des Rechners wäre, wenn mehrere KDE-Programme ausgeführt werden. Stattdessen landet dieser Code in einer Bibliothek, die dann nur ein einziges Mal geladen werden muss und allen KDE-Programmen zur Verfügung steht. Die Bibliotheken (engl.: Libraries) liegen meistens in /usr/lib/, /usr/local/lib/ oder Unterverzeichnissen davon; nur einige wichtige Systembibliotheken liegen direkt in /lib.

Include-Files

Während die Bibliotheken von fertigen Programmen verwendet werden, muss dem Compiler beim Übersetzen eines Programmes gesagt werden, wie auf die Bibliotheken zugegriffen werden kann, d. h. welche Programm-Funktionen sie bereitstellen. Dazu dienen die Include-Dateien, die die Endung .h haben und von den C- oder C++-Programmen eingebunden werden. Die Include-Dateien finden Sie meist in /usr/include, /usr/local/include und deren Unterverzeichnissen.

LinuxCommunity kaufen

Einzelne Ausgabe
 
Abonnements
 

Ähnliche Artikel

  • Dr. Linux
    Installieren macht Freunde, wenn man sich nachher über eine schicke neue Applikation freuen kann. Speziell das Kompilieren von KDE und KDE-Applikationen stellt jedoch für viele ein echtes Problem dar.
  • So beheben Sie Fehler bei der Ausführung von make
    Wenn das configure-Skript fehlerfrei durchgelaufen ist, stehen nur noch make und make install zwischen dem Anwender und der neuen Software. Auch hier steckt der Teufel bisweilen im Detail.
  • FTP-Client KBear
    Wenn's um den Download von Software per FTP geht, bietet ein spezialisiertes Client-Programm viele Vorteile gegenüber dem Zugriff per Web-Browser. KBear kann beispielsweise mehrere Server zeitgleich besuchen.
  • Einführung in die Programmiersprache C
    Die meisten Anwendungen, die für Linux verfügbar sind, haben die Entwickler in C oder C++ programmiert. Das spielt für die Installation eines fertigen Pakets keine Rolle, doch in seltenen Fällen müssen Sie in den Quelltext schauen.
  • GUI-Programmierung mit Qt Designer
    Wenn die Englisch-, C++- und Qt-Kenntnisse ausreichen, macht der Qt Designer grafische Benutzeroberflächen (GUIs) per Mausklick möglich.
Kommentare

Infos zur Publikation

LU 11/2014: VIDEOS BEARBEITEN

Digitale Ausgabe: Preis € 4,95
(inkl. 19% MwSt.)

Mit der Zeitschrift LinuxUser sind Sie als Power-User, Shell-Guru oder Administrator im kleinen Unternehmen monatlich auf dem aktuelle Stand in Sachen Linux und Open Source.

Sie sind sich nicht sicher, ob die Themen Ihnen liegen? Im Probeabo erhalten Sie drei Ausgaben zum reduzierten Preis. Einzelhefte, Abonnements sowie digitale Ausgaben erwerben Sie ganz einfach in unserem Online-Shop.

NEU: DIGITALE AUSGABEN FÜR TABLET & SMARTPHONE

HINWEIS ZU PAYPAL: Die Zahlung ist auch ohne eigenes Paypal-Konto ganz einfach per Kreditkarte oder Lastschrift möglich!       

Tipp der Woche

Schnell Multi-Boot-Medien mit MultiCD erstellen
Schnell Multi-Boot-Medien mit MultiCD erstellen
Tim Schürmann, 24.06.2014 12:40, 0 Kommentare

Wer mehrere nützliche Live-Systeme auf eine DVD brennen möchte, kommt mit den Startmedienerstellern der Distributionen nicht besonders weit: Diese ...

Aktuelle Fragen

Artikelsuche
Erwin Ruitenberg, 09.10.2014 07:51, 1 Antworten
Ich habe seit einige Jahre ein Dugisub LinuxUser. Dann weiß ich das irgendwann ein bestimmtes Art...
Windows 8 startet nur mit externer Festplatte
Anne La, 10.09.2014 17:25, 6 Antworten
Hallo Leute, also, ich bin auf folgendes Problem gestoßen: Ich habe Ubuntu 14.04 auf meiner...
Videoüberwachung mit Zoneminder
Heinz Becker, 10.08.2014 17:57, 0 Antworten
Hallo, ich habe den ZONEMINDER erfolgreich installiert. Das Bild erscheint jedoch nicht,...
internes Wlan und USB-Wlan-Srick
Gerhard Blobner, 04.08.2014 15:20, 2 Antworten
Hallo Linux-Forum: ich bin ein neuer Linux-User (ca. 25 Jahre Windows) und bin von WIN 8 auf Mint...
Server antwortet mit falschem Namen
oin notna, 21.07.2014 19:13, 1 Antworten
Hallo liebe Community, Ich habe mit Apache einen Server aufgesetzt. Soweit, so gut. Im Heimnet...