Шаблон Makefile для компиляции всех исходных файлов в исполняемые файлы - PullRequest
0 голосов
/ 14 января 2020

Я хочу, чтобы мой make-файл идентифицировал и собрал каждый исходный файл в каталоге.

И файлы .f, и их исполняемые файлы существуют в текущем каталоге. Все исходные файлы являются короткими, независимыми частями (без ссылок друг на друга). Я хочу, чтобы исполняемые файлы были названы так же, как исходные файлы без sans .f (foo.f -> foo)

Следующее не работает:

FC=gfortran

% :: %.f
    ${FC} -Wall $< -o $@

При запуске Make я получаю make: *** No targets. Stop.

Как заставить make делать то, что я хочу?

1 Ответ

0 голосов
/ 14 января 2020

Следующий make-файл делает то, что я хочу:

FC=gfortran
FFLAGS=-Wall

SRC = $(wildcard *.f)
EXE = $(SRC:.f=)

all : $(EXE)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...