PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : QWT - include Problem



rtsx
15-09-2005, 13:34
Hallo,

ich habe in mein bestehendes Qt3 (funktioiert einwandfrei) nach Anleitung Qwt installiert.
Soweit so gut, ich hab nun im Qt Designer auch eine Schaltfäche mit den Qwt Widgets.
Wenn ich sie jedoch in ein Projekt mit einbinden will, beschwert er sich beim compilen, dass er die qwt_Wasicheinbaunwill.h nicht findet.

Ich habe es schon mit
#include <qwt_....h>
#include "/usr..../qwt_...h"
#include </usr..../qwt_...h>
probiert, bisher ohne Erfolg.

Im Zusammenhang mit Qt und Qwt habe ich noch folgende Dateien editiert:
~/.bashrc

QTDIR=/usr/lib/qt3
export QTDIR
PATH=$PATH:$QTDIR/bin
export PATH
/etc/ld.so.conf

/usr/lib/qt3/lib
/usr/lib/qwt-4.2.0/lib
gefolgt von ldconfig

Hat irgend wer eine Ahnung was ich vergessen habe einzustellen ?

So und nun nochma n paar Daten auch wenn Sie teilweise oben schon vorgekommen sind:

OS: Suse Linux 8.2
Qt: 3.1.1 /usr/lib/qt3
qwt: 2.4.0 /usr/lib/qwt-4.2.0


schonmal danke
gruß
RTSX

christophwth
15-09-2005, 14:20
Hi

die kompletten pfade solltes du dir sparen , besser sind angaben mit <headerfile_name.h> und entsprechend angepasste makefiles.

ne genaue Fehlermeldung wäre schon gut !

schon mal qmake -project , qmake , make versucht?

gruss
christoph

anda_skoa
15-09-2005, 14:30
Wie sieht deine .pro Datei aus?

Ist das QWT Include Verzeichnis in INCLUDEPATH eingetragen?

Ciao,
_

rtsx
16-09-2005, 06:40
qmake project.pro / qmake / make
muss ich ja machen, sonst compiliere ich ja nix ;)

Hier ist die Fehlermeldung (Projekt heisst plot.pro in dem zum test einfach nur eine analoguhr eingebaut ist, bisher ohne jede Funktion)

rtsx@7029:~/prg/qt/test> qmake plot.pro
rtsx@7029:~/prg/qt/test> qmake
rtsx@7029:~/prg/qt/test> make g++ -c -pipe -O2 -march=i586 -mcpu=i686 -fmessage-length=0 -fPIC -DNO_DEBUG -Wall -W -O2 -march=i586 -mcpu=i686 -fmessage-length=0 -fPIC -DNO_DEBUG -DQT_NO_DEBUG -I/usr/lib/qt3/mkspecs/default -I. -I/usr/include -I/usr/lib/qt3/include -I.ui/ -I.moc/ -o .obj/form1.o
.ui/form1.cpp .ui/form1.cpp:13:30: qwt_analog_clock.h: Datei oder Verzeichnis nicht gefunden In file included from
.ui/form1.cpp:20: form1.ui.h:9:56: usr/lib/qwt-4.2.0/include/qwt_analog_clock.h: Datei oder Verzeichnis nicht gefunden
.ui/form1.cpp: In constructor `Form1::Form1(QWidget*, const char*, bool, unsigned int)':
.ui/form1.cpp:35: error: invalid use of undefined type `struct QwtAnalogClock'
.ui/form1.h:19: error: forward declaration of `struct QwtAnalogClock'
.ui/form1.cpp:36: error: `setGeometry' undeclared (first use this function)
.ui/form1.cpp:36: error: (Each undeclared identifier is reported only once for each function it appears in.)
make: *** [.obj/form1.o] Fehler 1
in der 5. Zeile hat er genau den Pfad in der die Datei liegt, findet Sie aber trotzdem nicht :(

meine plot.pro

SOURCES += main.cpp
unix {
UI_DIR = .ui
MOC_DIR = .moc
OBJECTS_DIR = .obj
}
FORMS = form1.ui
TEMPLATE =app
CONFIG += qt warn_on release
LANGUAGE = C++
soll ich da was von Hand eintragen, oder geht das auch im qt ?

gruß
Tobias

anda_skoa
16-09-2005, 13:27
Du mußt noch das include Verzeichnis von QWT in der .pro eintragen und bei den Libs die qwt Bibliothek und den Linker Pfad



INCLUDEPATH += /usr/lib/qwt-4.2.0/include
LIBS += -L /usr/lib/qwt-4.2.0/lib -lqwt


Ciao,
_

rtsx
19-09-2005, 06:43
Guten Morgen,

ich hab die beiden Einträge in die plot.pro datei geschrieben, hat aber auch nichts gebracht :(

Gruß
Tobias

EDIT:

ich habe nun nochmal ein neues Projekt aufgemacht und die beiden Zeilen dort eingetragen und da gings.
Anscheinend war im alten noch irgendwo n Fehler drin.

EDIT2:
Wenn man es im Desinger einstellen möchte muss man auf
Project -> Project Settings -> c++ gehn und dann jeweils oben erwähnten libs und include (was nach dem = steht) eintragen


Danke für die Hilfe :)

gruss
Tobias