4

FreeBSDで言うと、アプリケーションは標準のシステムmakeではなくGNU make(gmake)でコンパイルする必要があります。Makefileがgmakeでコンパイルされていない場合に、Makefileの実行を停止してエラーを出力するために、Makefileに設定できるディレクティブはありますか?

4

2 に答える 2

7

makefileを呼び出しますGNUmakefile。GNU Makeはそれを検出しますが、他のmakeは検出しません。

チェックされる名GNUmakefileは、ほとんどのmakefileには推奨されません。GNU makeに固有であり、他のバージョンのmakeで理解されないmakefileがある場合は、この名前を使用する必要があります。他のmakeプログラムは、makefileとMakefileを検索しますが、GNUmakefileは検索しません。
于 2012-08-02T11:49:05.567 に答える
2

これは、ジャック・ケリーの答えへのアドオンです。

Makefileの名前をGNUmakefileに変更したら、次のコマンドでMakefileを作成します。

USEGNU=gmake $*
all:
    @$(USEGNU)
.DEFAULT:
    @$(USEGNU)

これにより、makeを実行するたびにgmakeが呼び出されます。

于 2013-12-01T04:22:29.683 に答える