63

私のディレクトリには、特定の環境変数が設定されたスクリプトをビルドするメイクファイルがあります。別の環境変数を設定して、同じディレクトリに別のメイクファイルを作成したい場合はどうすればよいですか? 2 つの make ファイルの名前はどのようにすればよいですか? makefile.1動作しますかmakefile.2?どのように呼びますか?

4

5 に答える 5

90

makefile.win や makefile.nix などのファイルに適切な名前を付けて使用できます。

make -f makefile.win
make -f makefile.nix

または、以下を含む Makefile があります。

win:
  make -f makefile.win

nix:
  make -f makefile.nix

と使用make winまたはmake nix

于 2012-08-21T15:07:58.683 に答える
11

実際には、同じmakeファイルに2セットの環境変数を含めることができます。例えば

COMPILER = gcc
CCFLAGS1 = -g
CCFLAGS2 = -Wall

a: main.c
        ${COMPILER} ${CCFLAGS1} main.c
b: test.c
        ${COMPILER} ${CCFLAGS2} test.c

make a次に、またはと言うことができますmake b。あなたが望むものに応じて。

また、-fフラグを使用して、呼び出したいmakefileを呼び出すこともできます。

于 2012-08-21T15:12:29.730 に答える
3

同じ目的で複数のメイクファイルを使用するのではなく、このようなことを行うことができます。環境を渡すか、同じメイクファイルにフラグを設定できます。例:



    ifeq ($(ENV),ENV1)
     ENV_VAR = THIS
    else
     ENV_VAR = THAT
    endif

    default : test

    .PHONY : test
    test:
            @echo $(ENV_VAR)


次に、引数を指定して make コマンドを実行するだけです



    make ENV=ENV1


于 2014-11-27T06:52:43.203 に答える