Login
Newsletter
Do, 15. Juni 2000, 22:12

Kompilierungsprobleme von KDE-Anwendungen unter Red Hat beseitigen

Vor einiger Zeit hatte ich mit dem Problem zu kämpfen, dass das Kompilieren von KDE-Anwendungen auf meinem Red-Hat-System immerzu fehlgeschlagen ist.

Der Fehler trat hierbei in dem Script ./configure auf. Nach einiger Suche in diversen Foren habe ich dann dank freundlicher Unterstützung der Linux-Gemeinde die Fehlerquelle gefunden. Die Umgebungsvariable QTDIR ist bei neueren Red-Hat-Versionen falsch gesetzt. Meines Wissens tritt dieser Fehler bei Red Hat in den Versionen 6.1 und 6.2 auf. Das Problem kann man genau genommen nicht als Fehler bezeichnen. Die Ungebungsvariable QTDIR zeigt auf die Version 2.1 der QT-Bibliotheken. Für das Kompilieren von KDE1-Anwendungen muss diese Umgebungsvariable jedoch auf die Bibliotheken in der Version 1.44 (Red Hat 6.1) bzw. Version 1.45 (Red Hat 6.2) zeigen.

Es gibt nun im folgenden zwei Möglichkeiten, diese Umgebungsvariable umzusetzen. Die erste Methode ändert die QTDIR-Variable temporär, das heisst bis zum nächsten Systemstart. Die zweite Methode, die ich ebenfalls beschreiben will, ändert den Wert der Variable permanent.

Temporäres Ändern der QTDIR-Variablen

Durch einfaches setzten der Umgebungsvariablen QTDIR kann das Problem temporär behoben werden. Zum Setzen dieser Variable gibt es zwei Befehle. Dies ist zum einen export und zum anderen setenv. Export wird bei der Bash und deren Derivaten eingesetzt. setenv wird bei csh und deren Derivaten eingesetzt. Welche Shell ein Benutzer verwendet, kann man mit dem Befehl env | grep SHELL herausfinden. In den meisten Fällen kommt die Shell »bash« zum Einsatz. Folgende Zeile muss nun auf der Konsole eingegeben werden, um die Varialbe QTDIR korrekt zu setzen:

Beispiel für bash auf Red Hat Version 6.2:

export QTDIR=/usr/lib/qt-1.45

Permanentes Setzen der QTDIR-Variablen

Um die Umgebungsvariable nun permanent auf die alte QT-Version zu setzen, muss eine Änderung in einer Datei vorgenommen werden. Die Änderungen können nur vom root-Benutzer durchgeführt werden. Setzt man die bash ein, so ist die zu ändernde Datei /etc/profile.d/qt.sh. Setzt man hingegen die csh bzw. eines deren Derivate ein, so muss die Datei /etc/profile.d/qt.csh bearbeiten. Ist man nicht sicher, welche Shell eingesetzt wird, bzw. die Benutzer am System verschiedene Shells verwenden, ist man auf der sicheren Seite, wenn man beide Dateien modifiziert. Am Beispiel der bash-Datei hier die Änderungen:

Originalversion:

# Qt initialization script (sh)
if [ -z "$QTDIR" ] ; then
  QTDIR="/usr/lib/qt-2.1.0"
fi
export QTDIR

Modifizierte Version:

# Qt initialization script (sh)
if [ -z "$QTDIR" ] ; then
  QTDIR="/usr/lib/qt-1.45"
fi
export QTDIR

Pro-Linux
Pro-Linux @Facebook
Neue Nachrichten