Ich habe das folgende Makefile. Es funktioniert gut für .f
und .c
Dateien, aber wenn ich .f90
Datei habe und es mit ifort kompilieren will nicht funktioniert? Könntest du mir bitte raten, wo ich mich ändern soll und wie? Dank SieKeine Regel, um Ziel f1.o zu machen, benötigt von f90_simple
FCOMPFLAGS = -O -ffixed-line-length-132
CCOMPFLAGS = -O
FFLAGS = $(FCOMPFLAGS) -fsecond-underscore
CFLAGS = $(CCOMPFLAGS)
LDFLAGS = $(FCOMPFLAGS)
LD = gfortran
FC = gfortran
MAKEFILE = Makefile
PROGRAM1 = f1
OBJS = f1.o \
f2.o \
f3.o
all: $(PROGRAM1)
$(PROGRAM1): $(OBJS) $(MAKEFILE)
$(LD) $(LDFLAGS) $(OBJS) -o $(PROGRAM1)
clean: @rm -f $(OBJS) core
wenn ich ausführen „make“ ich folgende Fehlermeldung erhalten,
make: *** No rule to make target `f1.o', needed by `f90_simple'. Stop.
Es scheint, dass mein Make-Datei nicht * .f90 Dateien nicht erkennt, und meine andere Frage ist, wir haben Flagge für ifrot Compiler in Make-Datei verwendet werden Dank
Da Sie keine Angaben darüber gemacht haben, welche Änderungen Sie vorgenommen haben, um 'ifort' zu verwenden, noch Angaben zum Problem gemacht haben (_does funktioniert_ ist keine nützliche Problembeschreibung), können wir Ihnen nichts helfen . – MadScientist
@ MadScientist Vielen Dank für Ihre Antwort, aber wenn ich f1.f und f2.f und f3.f und verwenden Sie es funktioniert. das selbe für die Dateien f1.f90 und f2.f90 und f3.f90 funktioniert nicht. Könnten Sie mir bitte sagen, wie ich es beheben kann, oder meine Frage deutlicher machen? –
Sie sollten ein Beispiel für den von Ihnen eingegebenen Befehl anzeigen und die Ausgabe anzeigen, die Sie erhalten haben, und erklären, warum Sie denken, dass sie falsch ist. Bitte schneiden und einfügen, anstatt Fehlermeldungen zu paraphrasieren. "Funktioniert nicht" könnte eine Million Dinge bedeuten: Der Compiler wird möglicherweise nicht gefunden, Ihr Quellcode wird möglicherweise nicht gefunden, es können Fehler in Ihrem Code auftreten, Sie befinden sich möglicherweise im falschen Verzeichnis, Sie müssen möglicherweise zusätzliche Bibliotheken installiert haben könnte nicht genügend Speicherplatz haben, könnte Ihr Computer spontan neu starten ... wir haben keine Ahnung und ohne zu wissen, was Ihr Problem ist, wie können wir Ihnen helfen, es zu lösen? – MadScientist