Archiv verlassen und diese Seite im Standarddesign anzeigen : Fehler beim kompilieren von KDE Anwendungen
Hallo!
Also erst mal muß QT ab Version 1.4x installiert sein.
Dann sollten die Pfade zu QT richtig gesetzt sein. Z.B. in /etc/profile kannst du sie eintragen:
# Check for QT
if [ -z $QTDIR ]; then
QTDIR=/usr/lib/qt
LIBQT=${QTDIR}/lib
export QTDIR LIBQT
fi
if [ ! -z $QTDIR ]; then
PATH=$PATH:${QTDIR}/bin
export PATH
MANPATH=$MANPATH:${QTDIR}/man
export MANPATH
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${QTDIR}/lib
export LD_LIBARAY_PATH
LIBARY_PATH=$LIBRARY_PATH:$LD_LIBRARY_PATH
export LIBRARY_PATH
CPLUS_INCLUDE_PATH=$CPLUS_INCLUDE_PATH:${QTDIR}/include
export CPLUS_INCLUDE_PATH
fi
Ich nehme an du willst KDE 1.1.x kompilieren?
Wenn du die aktuelle entwickler Version von KDE übersetzen willst, muß du wahnsinnig aufpassen!
1. Du brauchst QT 2.x! KDE 1.1.x läuft aber NICHT mit QT 2.x ! Also mußt du beides genau trennen und jeweils die Pfade setzen.
2. KDE liegt (normal) in /opt/kde , wenn du eine 2.x Version übersetzt muß du vorher das alte 1.1.x Verzeichnis umbenennen, sonst wird das überschrieben und es gibt einen MischMasch!
So, hoffe jetzt ist alles unklar!
Gruß
Robert
Hm, die KDE will ich nicht komplett neu übersetzen, nur eine einfache KDE-Anwendung aus dem Netz. Die Pfade zur QT-Lib sind richtig gesetzt, aber anscheinend möchte ./configure andere Bibliotheken, nämlich die QT-1.3, haben. Installiert ist aber schon QT-1.44. Beinhaltet diese nicht QT-1.3? Oder enthält die QT-2.x die QT-1.3 Bibliotheken?
Hallo,
ich habe ein Problem unter SuSE 6.3 KDE-Programme aus dem Netz zu kompilieren, genauer: beim kompilieren des KDE Studios meldet ./configure den Fehler:
---- cut ----
checking for QT... configure: error: QT-1.3 (headers and libraries) not found. Please check your installation!
---- cut ----
Was muss ich tun?
Hagen von Tronje
19.12.99, 06:12
Hallo victor,
ich selbst hab kein SuSE, weiss daher nicht,
wo SuSE6.3 die qt "vesteckt" hat.
Kann auch nicht auf der SuSE-Seite nachschauen: http://www.suse.de/de/produkte/susesoft/linux/Pakete/index.html
weil dort der link "kde" zweimal vergeben wurde
(hint Torsten: reparieren ;-)
jedenfalls kannst Du das qt-verzeichnis selbst angeben mit
./configure --with-qt-dir=/pfad/bei/SuSE/nach/qt-dir
Dann muesste es klappen. :-)
Ich denke, du hast die 1.Nov. Ausgabe von kdestudio.
Das mit dem QT1.3 ist ein fehler im
configure-Script.
Es wird ja >=qt-1.42 benoetigt.
Also einfach den qt-pfad noch mitgeben.
Hagen
[Diese Nachricht wurde von Hagen von Tronje am 19. Dezember 1999 editiert.]
Danke Hagen!
Daran hat es wirklich gelegen. Aber ein weiteres Problem ist dabei aufgetaucht, welches schon bei alten Versionen von SuSE auftrat:
configure meldet beim suchen nach den KDE-Headers den Fehler, dass es nicht möglich sei, eine kleine KDE-Applikation zu kompilieren. Dabei findet er beim suchen nach der KDE selbst die Bibliotheken und die Header korrekt. Frage: Sind das die richtigen Header? Im configure-
skript vom KDE Studio sind die kde_includes (zeile 2948) auch richtig gesetzt. Merkwürdig erscheint mir auch die Angabe der KDEDIR mit einem : (KDEDIR:-/opt/kde), ansonsten wird darauf nämlcih verzichtet. EIn Fehler im Skript?
Hagen von Tronje
21.12.99, 06:12
Hallo victor,
recht viel kann ich dazu nicht sagen,
(Grund: siehe oben).
Nur das es bei mir mit dem Compilieren klappt
auf eine nicht-SuSE-Distri.
Du beziehst Dich auf die Zeile 14 im configure-file?
ac_default_prefix=${KDEDIR:-/opt/kde}
Nein, dass ist kein Fehler.
Die Zeile besagt: nimm fuer ac_default_prefix den
Wert von KDEDIR;
falls KDEDIR nicht vorhanden ist,
nimm dafuer /opt/kde.
Das passt schon so http://www.linuxforen.de/ubb/smile.gif
Aber zurueck zu Deinem eigentlichen Problem:
>Sind das die richtigen Header?
Ich denke schon, wahrscheinlich ist es
/opt/kde/include
Stimmts?
>Im configure-skript vom KDE Studio sind
>die kde_includes (zeile 2948) auch richtig gesetzt.
Das ist fuer Dich aber uninteressant, da Du wahrscheinlich
_kein_
./configure --prefix=/irgendwas --with-qt...
gesetzt hast, deshalb gilt fuer Dich Zeile 2958
ac_kde_includes=
Oder nicht?
Es koennte sein, dass Dein Problem bei Zeile 3061 liegt,
das kann ich mangels SuSE nicht ueberpruefen.
Was kannst Du tun?
a) ./configure --with-extra-includes=/opt/kde/include --with-qt-...
oder
b)
Zeile 3274 & Zeile 3275 loeschen.
c)
oder beides
Good luck :-)
Hagen
Ist ja nett das du dir das Script mal angesehen hast -
also, ich habe die Zeilen gelöscht und configure mit deinen Vorschlägen aufgerufen. aber was sehe ich - eine Fehlermeldung die mir bei SuSE schon mal auftauchte (worauf ich auch eine Frage an SuSE stellte, die leider nie beantwortet wurde): Ich solle prüfen, ob die kdelibs und qt vom selben compiler übersetzt wurden. Wie geht das denn? Naja, wenn ich mit dem übersetzen vom KDE Studio fertig bin, kenn ich mich wohl mit make und configure aus. http://www.linuxforen.de/ubb/smile.gif Wie sagte schon Bobby Fischer (Exschachweltmeister) Aus meinen verlorenen Partien habe ich am meisten gelernt!
Hagen von Tronje
22.12.99, 05:34
Ok,
das mit dem Compiler kannst Du ueberpruefen, wenn Du
z. B. mit 'less' (nicht mit 'more' !) anschaust:
less /usr/lib/libqt.so.1.44
[binary, see it anyway? => 'y' eingeben ]
/egcs
bzw.
/gcc
Dann erscheint sowas wie
GCC: (GNU) egcs-2.91.66 19990314 (egcs-1.1.2 release)
Das gleiche mache mit den 'kdelibs', also:
less /opt/kde/lib/libkdecore.so
Loesche die Zeilen 3282 bis 3288!
Irgendwann ist configure fertig ;-)
Hagen
Vielen Dank für deine Hilfe, Hagen.
Leider meldet das Skript einen ganz lustigen Fehler (finde ich zumindest): Das Skript bräche jetzt abrupt ab.... hm, komisch. Naja, ein Blick in die configure.log zeigt, das die kdelibs die Aufrufe der QT-Header intern nicht auflösen können. Merkwürdig, oder? Bei anderen KDE-Programmen funktioniert das doch. Darf man in den einzelnen kdelibs die QT-Headerorte fest eintragen? Ist das sinnvoll? Oder funktioniert danach die KDE bzw. einzelne Programme nicht mehr? Auf jedenfall bin ich davon überzeugt, in den letzten Tagen viel über mein System gelernt zu haben ( und damit für unser Uni-System Solaris). Andererseits: sollte configure nicht die Softwareinstallation vereinfachen? Wie sollen das denn normale (vielleicht Windoof-)User können?? Wenn ich es geschafft habe das KDE Studio zu übersetzen pack ich ein damit ein SuSE-rpm!
Hagen von Tronje
22.12.99, 21:45
Ooopsi,
mea culpa :-(
Also, schon mein erste Antwort war nicht korrekt,
d. h.
./configure --with-qt-dir=/pfad/bei/SuSE/nach/qt-dir --with-extra-includes=/opt/kde/include
KOMPLETT vergessen und
die Zeilen 3274/3275 und 3282 bis 3288 wieder
rein. :-)
Besser ist:
./configure --with-qt-libraries=/usr/lib --with-qt-includes=/usr/lib/qt/include
Wo bei Dir die 'qt-libraries' liegen, erhaelst Du mittels:
locate libqt.so.1.44
Wo bei Dir die 'qt-includes' liegen, erhaelst Du mittels:
locate qapplication.h
Die kde-fehlermeldungen sind quasi Folgefehler, da bei
Dir (wie wohl bei mir) die 'qt-includes' und die 'qt-library' auf
verschiedenen Verzeichnisebenen liegen und somit die Angabe
"--with-qt-dir"
zu einem Fehler fuehrt!
Hagen
Hi Hagen, Deinen Hinweis habe ich weitergeleitet.
Hi victor, wann war Deine Anfrage? welche Email? Welcher
Registriercode? Schick mir das mal als Mail.
thorsten
------------------
Thorsten Wandersmann
SuSE GmbH, Nuernberg
So Jungs,
das wars - danke Hagen für deine Mühe: der Tip mit dem locate qapplication.h hat es an den Tag gebracht. Das Paket war installiert aber die Dateien gab es nicht mehr - richtig, die QT-Header waren gelöscht worden! Das muss mit den SuSE-Paketen zusammenhängen, welche sich gegenseitig ausschliessen. Auf jedenfall hat eine neuinstallation, sowie der Tip mit den configure-Optionen das Resultat erbracht: DANKE! http://www.linuxforen.de/ubb/smile.gif Frohe Weihnachten!
vBulletin® v3.8.6, Copyright ©2000-2012, Jelsoft Enterprises Ltd.