Nichts zu tun ist für die "Makefile"

Ich soll schreiben ein Makefile für ein Projekt, das ich tun müssen. Ich habe alles gemacht aber wenn ich versuche, es zu tun, ich bekomme die folgende Ausgabe:

machen: Nichts zu tun für `Makefile'

Was könnte die Ursache sein?

Hier ist mein Makefile-Datei:

###########################################################
# Makefile for XXXXX
# name1, name2
# account1, account2
###########################################################
EXEC = a1
CC = /opt/SUNWspro/bin/cc
$(EXEC):
    $(CC) -o $(EXEC) a1.cpp a1.h a1.sic
    rm -f *.o
clean:
    rm -f *.o core diss $(EXEC)
#######################[ EOF: Makefile ]###################

Bearbeiten:
Dank eines freundlichen user ich weiß jetzt, was passiert ist.

Nun habe ich die folgende Ausgabe

/opt/SUNWspro/bin/cc -o a1 a1.cpp a1.h a1.sic
ld: fatal: file a1.cpp: unknown file type
ld: fatal: file processing errors. No output written to a1
make: *** [a1] Error 2

Können Sie bitte helfen?

Sie versuchen, kompilieren von C++ code mit einem C-compiler; dies funktioniert nicht gut. Verwenden Sie einen C++ - compiler, wahrscheinlich /opt/SUNWspro/bin/CC (alle caps). Sie nicht Liste normalerweise in den header-Dateien auf der compiler-Kommandozeile. Und ich bin mir nicht sicher, wer weiß, was für ein .sic - Datei ist.
Der professor fragte uns zu jeder Datei. Ein .sic - Datei ist für einen assembler verwenden wir.
Gut, wenn die .sic - Datei übersetzt wird, die für Sie, in Ordnung. Die .h Datei sollte wohl nicht auf der Kommandozeile. Es gibt eine chance, es kann erkannt werden und unschädlich gemacht, aber wenn es ein problem mit nicht erkanntem Dateityp für a1.h, dann wissen Sie, es war nicht OK. Ich habe nicht gesehen .sic verwendet für assembler. Wenn die Sun-compiler erkennt es, ist das Super. Wenn nicht, haben Sie einige Arbeit zu tun, die im makefile (möglicherweise hinzufügen von Regeln für die Konvertierung .sic assembler zu .o Objekt-Dateien.
Ein makefile automatisiert die Aufgaben, die Sie sonst führen Sie von der Befehlszeile aus. Also, bevor Sie schreiben Sie ein makefile, etwas zu tun, Sie müssen wissen, wie Sie es tun, ohne ein makefile. Versuchen Sie, bauen Sie a1 mit einem Befehl wie cc -o a1 a1.cpp a1.sic, und versuchen Sie nicht, schreiben Sie ein makefile, bis das perfekt funktioniert.

InformationsquelleAutor Julio Garcia | 2013-02-25

Schreibe einen Kommentar