ich habe hier ein recht seltsames Problem:
Bei meinem aktuellen Projekt (Qt 4.8.4, Linux, QtCreator) habe ich versucht in einem meiner eigenen Header über eine Compilerschalter (DEFINES += ...) ein Makro auszuschalten, indem ich es in Abhängigkeit von diesem Schalter als Leerstring definiere, sollte kein Problem sein.
als ich danach versucht habe, mein projekt neu zu bauen (sicher das 20. mal heute, ohne Änderungen in der Dateistruktur o.ä. ) bekam ich auf einmal einen Parser-Fehler in der Pro-Datei, Zeile 1. Bemängelt wurde der von QtCreator eingefügte Kommentar:
Code: Alles auswählen
#------------------------------
# erzeugt mit QtCreator (
#------------------------------
Include mittels z.B.
Code: Alles auswählen
#include <QtSql/QSqlRecord>
1. mit ich nicht unbedingt erfreut, alle Includes ändern zu müssen
2. hat es bis vor 10 Minuten perfekt funktioniert - warum jetzt also nicht mehr?
Kennt jemand ein solches Verhalten? Neustart von QtCreator und/oder Rechner habe ich bisher noch nicht probiert.
Bin für jeden Tip dankbar!
Gruss
Tilman (Räger)
Noch ein paar Ergänzungen:
- Neustart des QtCreators ergab keine Änderung.
- Im Makefile wird offensichtlich das Define -DQT_SQL_LIB (oder so ähnlich, der Rechner ist schon heruntergefahren nicht gesetzt, dadurch fehlen anscheinend die Suchpfade und beim Linken findet er auch keine der Qt SQL-Funktionen.
Die Lösung (oder besser der Workaround): Aufspalten der Zeile
Code: Alles auswählen
QT += core gui sql
in
Code: Alles auswählen
Qt += core gui
Qt += sql
Gruss
Tilman (Räger)