Kann ich alle .cpp-Dateien in src / zu .o's in obj / kompilieren und dann zu binary in ./?

Mein Projekt-Verzeichnis sieht wie folgt aus:

/project
    Makefile
    main
    /src
        main.cpp
        foo.cpp
        foo.h
        bar.cpp
        bar.h
    /obj
        main.o
        foo.o
        bar.o

Was ich möchte, das mein makefile zu tun wäre, um kompilieren Sie alle .cpp Dateien in der /src Ordner zu .o Dateien in der /obj Ordner, dann verknüpfen Sie alle .o Dateien in /obj in die output-binary in den Ordner der obersten Ebene /project.

Habe ich neben keine Erfahrung mit Makefiles, und bin nicht wirklich sicher, was zu suchen, dies zu erreichen.

Außerdem ist das ein "guter" Weg, dies zu tun, oder ist es ein standard-Ansatz zu dem, was ich versuche zu tun?

Kommentar zu dem Problem
@aaa: ich vermute, der OP will eine Lösung, die nicht erforderlich ist, explizit auflisten jeder Quellcode-Datei. Kommentarautor: Cascabel
Ich will nicht angeben, jede source-Datei habe ich, und ich habe versucht, zu Lesen, dass die Anleitung vor, aber ich finde es unorganisiert und schwer zu verstehen. Ich Lerne viel besser, von einem tatsächlichen Beispiel, die tut, was ich erwarte, dass er funktioniert und ist gut erklärt, eher als trockene technische Handbücher. Kommentarautor: Austin Hyde
okay. Aber machen die Dokumentation ist ausgezeichnet mit guten Beispielen (es wird nicht versuchen, technische Anleitung). Sie sind auf der Suche für Muster-Regeln: gnu.org/software/make/manual/make.html#Pattern-Rules Kommentarautor: Anycorn
Das sieht ein wenig mehr wie das, was ich will. Obwohl, IMHO, die manuelle ist ein wenig trocken, wie es scheint mehr ausgerichtet auf Entwickler, die sich auf einem mittleren Niveau mit machen, und darüber hinaus ist sehr groß und in-Tiefe. Vielleicht zu viel, so. Kommentarautor: Austin Hyde

InformationsquelleAutor der Frage Austin Hyde | 2010-05-25

Schreibe einen Kommentar