Compiler findet .h Dateien nicht

Verschiedenes zu Qt
Antworten
baloo der baer
Beiträge: 13
Registriert: 4. Juli 2006 18:06

Compiler findet .h Dateien nicht

Beitrag von baloo der baer »

Hallo ich habe folgendes Problem:

ich will das 1. SQL Beispiel von Trolltech(Chachedtable) compilieren aber es kommt folgende Fehlermeldung.


In file included from main.cpp:5:
connection.h:5:24: QSqlDatabase: No such file or directory
connection.h:6:21: QSqlError: No such file or directory
connection.h:7:21: QSqlQuery: No such file or directory
In file included from main.cpp:5:
connection.h: In function `bool createConnection()':
connection.h:19: error: `QSqlDatabase' undeclared (first use this function)
connection.h:19: error: (Each undeclared identifier is reported only once for each function it appears in.)
connection.h:19: error: expected `;' before "db"
connection.h:20: error: `db' undeclared (first use this function)
connection.h:32: error: `QSqlQuery' undeclared (first use this function)
connection.h:32: error: expected `;' before "query"
connection.h:33: error: `query' undeclared (first use this function)
mingw32-make.exe[1]: *** [release\main.o] Error 1
mingw32-make.exe[1]: Leaving directory `C:/Programme/eclipse_old/Workspace/dbzugriff'
C:\MinGW\bin\mingw32-make.exe: *** [release-all] Error 2



Vorher hab ich natürlich

qmake -project
qmake

in die Konsole eingegeben.

Da das erste include (#include <QMessageBox>) gefunden wird aber alles was mit SQL zu tun hat nicht, vermute ich das ich das noch in irgedeine Systemvariable eintragen muß aber in welche?
Ich habe fogende Systemvariablen angelegt/erweitert:

PATH:
C:\Qt\4.1.4\bin;C:\MinGW\bin;C:\Qt\4.1.4;
C:\Qt\4.1.4\include;C:\Qt\4.1.4\include\QtSql;C:\Qt\4.1.4\lib

LIB:
C:\Qt\4.1.4\lib

INCLUDE:
C:\Qt\4.1.4\include

QTDIR:
C:\Qt\4.1.4

QMAKESPEC:
win32-g++


Welche Systemvariable brauche ich noch oder liegt der Fehler ganz wo anders?

Danke schon mal jetzt für eure Antworten.
Baloo
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

CONFIG += sql in der pro-Datei fehlt (mal wieder)
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
baloo der baer
Beiträge: 13
Registriert: 4. Juli 2006 18:06

Beitrag von baloo der baer »

Danke das fehlte wirklich aber wenn ich jetzt nochmal

qmake
make

ausführe kommt die selbe Fehlermeldung.

Meine .pro sieht jetzt so aus:



TEMPLATE = app
TARGET +=
DEPENDPATH += .
INCLUDEPATH += .

# Input
HEADERS += connection.h tableeditor.h
SOURCES += main.cpp tableeditor.cpp

CONFIG += sql
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Schau ob im Makefile auch wirklich der Pfad zu qt-4-src/include/QtSql drin ist. Ausserdem sollte bei den libs QtSql(d).lib dabei sein.

Deine pro-Datei würde ich ausserdem etwas anpassen. Ein target definieren und HEADERS/SORUCES += durch HEADERS = ersetzen. Nur damit es aufgeräumter aussieht.

Wenn der Pfad nicht drin ist, lösche das Makefile mal und führe nochmals qmake aus.
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
baloo der baer
Beiträge: 13
Registriert: 4. Juli 2006 18:06

Beitrag von baloo der baer »

Code: Alles auswählen

Schau ob im Makefile auch wirklich der Pfad zu qt-4-src/include/QtSql drin ist. Ausserdem sollte bei den libs QtSql(d).lib dabei sein.
Ist beides nicht drin. Wo muß das genau hin? Muß ich das jetzt jedesmal von Hand ändern?

PS: Danke für die schnellen Antworten.
baloo der baer
Beiträge: 13
Registriert: 4. Juli 2006 18:06

Beitrag von baloo der baer »

Hier nochmal mein make file:

first: release
install: release-install
uninstall: release-uninstall
MAKEFILE = Makefile
QMAKE = qmake
DEL_FILE = del
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
COPY = copy /y
COPY_FILE = $(COPY)
COPY_DIR = xcopy /s /q /y /i
INSTALL_FILE = $(COPY_FILE)
INSTALL_DIR = $(COPY_DIR)
DEL_FILE = del
SYMLINK =
DEL_DIR = rmdir
MOVE = move
CHK_DIR_EXISTS= if not exist
MKDIR = mkdir
SUBTARGETS = \
release \
debug

release: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_default: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release
release-make_first: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release first
release-all: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release all
release-clean: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release clean
release-distclean: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release distclean
release-install: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release install
release-uninstall: $(MAKEFILE).Release FORCE
$(MAKE) -f $(MAKEFILE).Release uninstall
debug: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_default: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug
debug-make_first: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug first
debug-all: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug all
debug-clean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug clean
debug-distclean: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug distclean
debug-install: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug install
debug-uninstall: $(MAKEFILE).Debug FORCE
$(MAKE) -f $(MAKEFILE).Debug uninstall

Makefile: dbzugriff.pro ..\..\..\..\Qt\4.1.4\mkspecs\win32-g++\qmake.conf C:/Qt/4.1.4/mkspecs/qconfig.pri \
..\..\..\..\Qt\4.1.4\mkspecs\features\qt_config.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\exclusive_builds.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\default_pre.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\default_pre.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\release.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\debug_and_release.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\default_post.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\rtti.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\exceptions.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\stl.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\shared.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\warn_on.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\qt.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\thread.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\moc.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\windows.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\resources.prf \
..\..\..\..\Qt\4.1.4\mkspecs\features\uic.prf \
c:\Qt\4.1.4\lib\qtmain.prl
$(QMAKE) -win32 -o Makefile dbzugriff.pro
C:/Qt/4.1.4/mkspecs/qconfig.pri:
..\..\..\..\Qt\4.1.4\mkspecs\features\qt_config.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\exclusive_builds.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\default_pre.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\default_pre.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\release.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\debug_and_release.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\default_post.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\rtti.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\exceptions.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\stl.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\shared.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\warn_on.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\qt.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\thread.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\moc.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\win32\windows.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\resources.prf:
..\..\..\..\Qt\4.1.4\mkspecs\features\uic.prf:
c:\Qt\4.1.4\lib\qtmain.prl:
qmake: qmake_all FORCE
@$(QMAKE) -win32 -o Makefile dbzugriff.pro

qmake_all: FORCE

make_default: release-make_default debug-make_default FORCE
make_first: release-make_first debug-make_first FORCE
all: release-all debug-all FORCE
clean: release-clean debug-clean FORCE
distclean: release-distclean debug-distclean FORCE
-$(DEL_FILE) Makefile

release-mocclean: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocclean
debug-mocclean: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocclean
mocclean: release-mocclean debug-mocclean

release-mocables: $(MAKEFILE).Release
$(MAKE) -f $(MAKEFILE).Release mocables
debug-mocables: $(MAKEFILE).Debug
$(MAKE) -f $(MAKEFILE).Debug mocables
mocables: release-mocables debug-mocables
FORCE:

$(MAKEFILE).Release: Makefile
$(MAKEFILE).Debug: Makefile
Christian81
Beiträge: 7319
Registriert: 26. August 2004 14:11
Wohnort: Bremen
Kontaktdaten:

Beitrag von Christian81 »

Manchmal sollte man mich einfach nur treten *grml*
Aber du hast den Link auch nicht gelesen ;)

nicht "CONFIG += sql" sondern "QT += sql"
MfG Christian

'Funktioniert nicht' ist keine Fehlerbeschreibung
baloo der baer
Beiträge: 13
Registriert: 4. Juli 2006 18:06

Beitrag von baloo der baer »

Asche auf mein Haupt. Das das ein Link ist hab ich total übersehen.

Danke! Jetzt läufts.
Antworten