2017-04-18 1 views
0

Angenommen, wir haben eine Klasse namens Katze in einem Verzeichnis namens dirOfKatze.qmake: Entspricht INCLUDEPATH für Quell-/cpp-Dateien?

Katze.h

#ifndef KATZE_H 
#define KATZE_H 


class Katze 
{ 
public: 
    Katze(); 
}; 

#endif // KATZE_H 

Katze.cpp

#include "katze.h" 
#include <iostream> 

Katze::Katze() 
{ 
    std::cout<<"MIAU"<<std::endl; 
} 

Nehmen wir an, dass ich die Klasse zu einem Qt-Projekt hinzufügen möchten. Ich kann dies tun, indem

INCLUDEPATH + = dirOfKatze

in meiner .proDatei angeben. Jetzt ist die Header-Datei von Katze, oder besser alle Header-Dateien im Verzeichnis dirOfKatze, enthalten. Aber leider Katze.cpp kann immer noch nicht durch den Linker zu finden:

#include "katze.h" 

int main() 
{ 
    Katze myCat; 

    return 0; 
} 

Ergebnisse in: LNK2019 ... public: __cdecl Katze :: Katze (void)“...

Gibt es eine Möglichkeit dem Linker mitzuteilen, dass er nach den cpp-Dateien in dirOfKatze Entsprechung zu INCLUDEPATH suchen soll? Das ist relevant für mich, weil es viele cpp-Dateien geben könnte und ich sie alle auf einmal hinzufügen möchte, ohne sie einzeln hinzuzufügen Eingabe von SOURCE + = .... \

+2

Mögliches Duplikat von [QMake: Automatisches Kompilieren aller Dateien in einem Verzeichnis] ​​(http://stackoverflow.com/questions/3806833/qmake-automatical-compiling-all-files-in-a-directory) – smerlin

Antwort

2

Sie müssen die folgenden Zeilen in Ihre .pro-Datei einfügen:

HEADERS += pathTo_Katze.h 
SOURCES += pathTo_Katze.cpp