Ich habe ein Projekt erstellt, von dem ich anfangs dachte, dass es einfach wäre (einige Dateien), aber jetzt wächst das Projekt. Ich versuche, die Verzeichnisstruktur zu reorganisieren, aber ich bin nicht sicher, wie man das Makefile ändert. HierÄndern der Projektorganisation mit Makefile
ist die Struktur Ich habe:
root_dir
Makefile
main.cc
fileA.cc
fileA.h
fileB.cc
fileB.h
Auch fileB von dateiA abhängt (#include "fileA.h"
) und mein Makefile sieht wie folgt aus:
all: myExec
myExec: main.o fileA.o fileB.o
g++ -Wall main.o fileA.o fileB.o -o myExec
main.o: main.cc fileA.h fileB.h
g++ -Wall -c main.cc
fileA.o: fileA.cc fileA.h
g++ -Wall -c fileA.cc
fileB.o: fileB.cc fileB.h fileA.h
g++ -Wall -c fileB.cc
Nun möchte Ich mag so etwas haben :
root_dir
Makefile
main.cc
dirA
fileA.cc
fileA.h
dirB
fileB.cc
fileB.h
Ich habe gelesen, dass ich ein Makefile in jedem Unterdi erstellen konnte Pfarrhaus, aber ich bin mir nicht sicher, dass dies hier machbar ist, da Datei B von Datei A abhängt (die in einem anderen Unterverzeichnis ist).
Oder sollte ich mein Haupt-Makefile ändern, um das Unterverzeichnis einzubeziehen?
Vielen Dank.
Wie funktioniert Ihr aktuelles Makefile? – Quentin
Sie müssen ein Beispiel aus der Praxis liefern, wie hängt "DateiB" von "DateiA" ab? Details wie diese sind entscheidend, Sie haben nicht einmal gesagt, was Sie machen, ausführbare Dateien? Bibliotheken? – user657267
Ich habe die Makefile Beschreibung hinzugefügt. Ich erwähnte FileB include fileA (#include 'fileA.h'). Ich erstelle eine ausführbare Datei. – whiteShadow