10

次のようなものを用意するのは悪い習慣ですか?

all:

Makefileで、ユーザーにターゲットを指定させ、デフォルトのターゲットを無視するには?

4

1 に答える 1

18

all必ずしもデフォルトのターゲットではありません。デフォルトのターゲットは、makefile で定義された最初のターゲットです。また、空のターゲットをデフォルトのままにしておくと (allメイクファイルの他の場所にルールを持つ他のターゲットがないと確信している場合)、makeの動作は少し不可解になる可能性があります。デフォルトの動作で、次のような適切なエラー メッセージを出力することをお勧めします。

error:
        @echo "Please choose one of the following target: compile, install, uninstall"
        @# Alternatively: "Please RTFI(nstall)F(ile)"
        @exit 2
于 2013-02-26T17:47:31.553 に答える