.h wird im aktuellen Pfad gefunden, .cc nicht
-
Hi,
ich kompiliere mit gcc unter Linux per Makefile.
In einer Header steht folgendes:#include "vtkQtObjectFactory.h" #include "moc_vtkQtOutputWindow.cc"
Die beiden Dateien stehen beide im selben (aktuellen) Verzeichnis. Seltsamerweise wird die erste Datei gefunden, bei der zweiten heißt es
make
create dependencies for vtkQtOutputWindow.cc
vtkQtOutputWindow.cc:4:36: moc_vtkQtOutputWindow.cc: Datei oder Verzeichnis nicht gefundenVersteht das jemand? Hat das was mit den unterschiedlichen Datei-Endungen zu tun? Werden Header-Dateien an anderen stellen als die restlichen Dateien gesucht? Ich weiss, dass die passende .cc im selben Verzeichnis wie die .h steht und in diesem Fall wird die .cc gefunden.
Gruss, Karl
-
Ok, ich gehe davon aus, dass Du eine QT-Anwendung kompilierst. Nutzt Du den gcc oder den g++? Du musst den g++ verwenden.
-
ja, QT.
ich verwende g++
mein fehler
aber der fehler tritt trotzdem aufKarl
-
Bei so kranken Dateinamen würd' ich erstmal gucken, ob die Datei auch WIRKLICH so heißt, und ob da nicht fiese é, â oder __ drin stecken...
-
Normalerweise brauchst Du die moc-Files überhaupt nicht include. Du kompilierst sie und linkst sie zum Binary.
Wie sieht denn das Makefile aus?
-
Dieser Thread wurde von Moderator/in HumeSikkins aus dem Forum C++ in das Forum Compiler-Forum verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.