Как исправить этот Makefile - PullRequest
2 голосов
/ 25 марта 2010

Я хочу, чтобы мой Makefile был как можно более простым и все еще функционировал. Вот как это выглядит.

load: load.cpp
    g++ load.cpp -g -o load
list: list.cpp
    g++ list.cpp -g -o list

Работало нормально, когда была только одна запись. Но когда я добавил вторую запись, она не проверяет, обновлена ​​ли она и нуждается ли в перекомпиляции, если только я специально не предоставил имя. Как мне это исправить?

Ответы [ 2 ]

5 голосов
/ 25 марта 2010

Make только делает первую цель автоматически. Поэтому добавьте новую первую цель, которая зависит от других.

all: load list

load: load.cpp
    g++ load.cpp -g -o load

list: list.cpp
    g++ list.cpp -g -o list
2 голосов
/ 25 марта 2010

Дейв Хинтон показал, как заставить Makefile работать. Вот как это сделать проще:

all: load list

%: %.cpp
    g++ $< -g -o $@
...