PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Kdevelop 1.3 und QT3



sutterp
22-12-2001, 01:50
Hallo Allerseits,

Zurzeit benuetze ich fuer Software Entwicklung Kdevelop 1.3 und Qt-2.2.3, Suse 7.1 auf 1Ghz Pentium. Ich moechte aber jetzt das neue Qt-3.0.0 benuetzen, es sind da etliche features drin die ich mir gerne naeher ansehen moechte. Es klemmt aber schon kurz nach der Installation.

Was ich bisher gemacht habe:

1.) Installierte Qt-3.0.0 erfolgreich. Die Libraries und Include Files scheinen alle da zu sein. Die Installation erfolgte mit rpm von Suse, ich hab also nicht die source installiert, sondern die ausfuehrbare version.
2.) $QTDIR zeigt auf /usr/lib/qt --> qt-2.2.3
3.) configure --with-qt-dir=/usr/lib/qt2, konfiguriert richtig.
4.) Kompilation laueft richtig.

Jetzt habe ich mein Programm mit KDevelop 1.3 gegen das alte Qt-2.2.3 umgewandelt. Das funktioniert alles richtig.

Um das mit Qt3 ans laufen zu bringen:

5.) clean und distclean
6.) Anderung von $QTDIR, zeigt jetzt auf /usr/lib/qt -->qt-3.0.0
7.) configure --with-qt-dir=/usr/lib/qt3, versagt mit:

checking for Qt... configure: error: Qt (>= Qt 2.2.1) (libraries) not found. Please check your installation!
For more details about this problem, look at the end of config.log.

in config.log steht:
/usr/lib/qt3/lib/libqt.so: undefined reference to `XftNameUnparse'

Was passt wie, wo nicht zusammen? Wer hilft mir weiter?

Vielen Dank fuer die Hilfe.

ZockerM
25-12-2001, 12:22
HI!

Soweit ich weiß ist KDE2 nicht mit QT3.01 kompatibel...saug dir doch die KDE Beta Version, das ist automatisch mit QT3.01 und es ist auch eine neuere Version von KDevleop dabei...
Allerdings, warum willst du den KDevelop neu komplilieren? Ändere doch den Pfad...


gruß ZockerM

tentlewi
02-01-2002, 17:05
Hi,

auch ich hatte das selbe Problem wie Du. Doch irgendwie hatte ich es vor einigen Monaten zum Laufen gekriegt. Jetzt vor einer Woche war ich gezwungen zwecks Neuinstallation von SuSE 7.3 mein Kdevelop zusammen mit QT 3.0.1 zum laufen zu bewegen, doch leider hatte ich meine letzte Installation sehr schlecht dokumentiert, so dass ich genau die selbe Fehlermeldung bekam.

checking for Qt... configure: error: Qt (>= Qt 2.2.1) (libraries) not found. Please check your installation!


Nun nach zwei Tagen grübeln und Kopfzebrechen die Lösung:

1.) kompilliere dein QT am besten wie empfohlen unter /usr/local/qt3, jedoch ganz wichtig als ROOT ( ich habe es vorher immer unter meinem USER gemacht )

2) erzeuge dann unter Deinem User Account wie in der INSTALL Anweiseung angegegeben die .profile Datei.

3.) starte Kdevelop und unter Optionen/Kdevelop-Einrichtung/Pfad/QT2xOrdner
trägst Du den Pfad Deiner QT Distri ein.


Wenn Du jetzt ein neues QT Projekt erzeugst dürfte dieses einwandfrei ohne die Fehlermeldung durchlaufen..... war bei mir auf jeden Fall erfolgreich.


so, hoffe Du hast jetzt auch wieder Spass an QT bis denn

Martin Tentlewitz

sutterp
23-01-2002, 07:42
Verspaetet aber doch vielen Dank, Martin.

Nein, es geht eben nicht. Das alte KDevelop 1.3 und Qt3 scheinen sich nicht zu vertragen.

Aber so wie ichs jetzt gemacht habe geht es eben auch nicht!!!

Also, was ich in der Zwischenzeit gemacht habe? Linux von SuSE 7.1 auf SuSE 7.3 upgraded. Ach war das ein Krampf, das passte ja alles nicht recht zusammen. Angefangen mit remote logins ueber KDM, Python, LVM, Powerd,, dem renamen von USB_START zu HOTPLUG, printers, sound kdevelopment etc,etc, nichts ging mehr. Vielleicht waere eine Neuinstalltion weiser gewesen.

Jedenfalls laeuft jetzt soweit alles wieder unter SuSE V7.3. - aber mit Kdevelop 2.2.1 haperts immer noch. Ich hab vorerst mal Qt3 aufs Eis gelegt, bis ich Kdevelop wieder richtig ans laufen bekomme.

Das Problem ist, dass nach dem Upgrade kdevelop versucht gegen die alten kde libraries in /opt/kde/lib anstatt /opt/kde2/lib. zu linken. Das kompilieren geht einwandfrei, aber beim linken bekomme ich jede menge von Fehlermeldungen, z.B.

/opt/kde/lib/libkdecore.so: undefined reference to `QComboBox::insertItem(char const *, int)'

Offensichtlich is der Pfad /opt/kde/lib/libkdecore anstatt /opt/kde2/lib/libkdecore.

Ich versuchte das ganze zu forcieren indem ich alle Checkboxes ausgeclickt habe und unter Kdevelop->project->options->linkeroptions die libraries manuell angegeben habe.

Das klappt auch, aber ich haette gerne dass Kdevelop wie vorher die Defaultwerte benuetzt.

An beiden Orten, /opt/kde/lib und /opt/kde2/lib sind libkdexxx.so files vorhanden, aber eben unterschiedliche. Ich zoegere sehr, die neuen libraries nach /opt/kde/lib zu kopieren, da ich nicht weiss ob die alten Programme dann noch laufen wuerden.

Die zwei kde bezueglichen Umgebungsvariablen scheinen richtig zu sein, jedenfalls enthalten sie
KDEDIR = /opt/kde2
KDEDIRS = /etc/opt/kde2:/opt/kde2

Der Pfad in Kdevelop->setup->path zeigt auf /opt/kde2

Wo nimmt denn Kdevelop den Library Pfad her? Im makefile kanns nicht sein. Ich hab ja so 'removable' Disks, und wenn ich mit dem alten SUSE V7.1 arbeite klappt das ja noch richtig.

Tschues

Peter

tentlewi
23-01-2002, 09:09
Hi Peter,

also ich habe in meinen Unterlagen noch ein bisschen rumgekramt und gesehen, dass es auf der SuSE Support Datenbank einen Tip zu dem Thema gab. Es ist wohl so, dass die autoconf Version unter 7.3 nicht zu der Version von Kdevelop passt.
Du findest die richtige Version unter

ftp://ftp.suse.com/pub/suse/i386/7.2/suse/d2/autoconf.rpm

mit rpm -Uvh autoconf.rpm --force kannst du sie dann installieren.

Das behebt auf jeden Fall die ersten Probleme beim kompillieren.
Des weiteren, habe ich bei meiner damaligen Installation nicht weiter auf die kde Libraries eingehen muessen....... es lief mit QT2.xxx auf Anhieb.
Bei QT 3.0 koenntest Du vielleicht einfach mit configure --prefix=/usr/local das ganze laufen lassen, damit kommst Du eventuell nicht mit der QT2.xxx Version ins Gehege ( ist nur eine Vermutung ), wie gesagt ich habe es schon eine gewisse Zeit so laufen.

bis denn Gruss nach Australien
Martin

sutterp
23-01-2002, 09:26
Martin,

Diesen Patch habe ich schon installiert, weil ohne ihn das ganze configure nicht laueft (laeuft? wie schreibt man das richtig ohne Umlaute :-) ?) und ohne ihn kann ich nicht einmal kompilieren. An dem kanns ja eigentlich nicht liegen - oder doch? wo kommt denn das /opt/kde/lib eigentlich her? Wenns nicht im makefile ist, und kdevelop es auch nicht definiert, kanns ja nur noch eine Umgebungsvariable sein, ein Link der falsch steht oder eben configure. Es waere ja nicht das erste mal dass ein Patch etwas flickt und etwas anderes unflickt. So wie ich den Patch verstehe, ist das nichts anderes als das configure von SuSE 7.2.

Vielen Dank

Peter