第VIII章のメイクファイルMakefileの変数を使用します

上記の例では、私たちが編集のルールを見てみましょう:

編集:main.o kbd.o command.o display.o \ 
        insert.o search.o files.o utils.o 
    CC - 編集O main.o kbd.o command.o display.o \ 
        insert.o search.o files.oのutils.o

私たちは、新しいプロジェクト[の.o]ファイルを追加する必要がある場合、我々は2つの場所にする必要がプラス(同様に、3ヶ所である必要があり、[の.o]ファイルの文字列が二回繰り返され、見ることができます代わりにきれい)。もちろん、私たちのメイクファイルは複雑ではないので、2つの場所に加えて、疲れになりますが、メイクファイルが複雑であるので、我々はおそらく忘れ場所を追加する必要がありますし、コンパイルが失敗した場合はありません。そのため、注文メイクファイルにメイクファイルで、我々は変数を使用することができ、保守が容易です。C言語のマクロとして理解する文字列ですmakefileの変数は、良いかもしれません。

 

例えば、我々は関係なく、限り、彼らはライン上のOBJファイルを表すように何、オブジェクト、オブジェクト、OBJS、OBJS、OBJ、またはとにかくOBJ、という名前の変数を宣言していません。そこで我々は、メイクファイルの先頭で定義されています:

オブジェクト= main.o kbd.o command.o display.o \ 
        insert.o search.o files.o utils.o

 

だから私たちは私たちのメイクファイルに「$(オブジェクト)」は、この変数を使用する方法では簡単にできますので、我々はバージョンは、このような次のmakefileになっ修正:

オブジェクト= main.o kbd.o command.o display.o \ 
        insert.o search.o files.o utils.o 

編集:$(オブジェクト)
    のcc - O編集$(オブジェクト)
main.o:main.cのDEFS。 H 
    CC - C main.cの
kbd.o:kbd.c defs.h command.h 
    CC - C kbd.c 
command.o:command.c defs.h command.h 
    CC - C command.c 
display.o:ディスプレイ.C defs.h buffer.h 
    CC - C display.c 
insert.o:insert.c defs.h buffer.h 
    CC - C insert.c 
search.o:search.c defs.h buffer.h 
    CC - C検索.C
files.o:files.c defs.h buffer.h command.h 
    CC - C files.c 
utils.o:あるutils.c defs.h 
    のcc - Cあるutils.c 
クリーン:
    RM編集$(オブジェクト)

新しい.oファイルを追加しているのであれば、我々は単に上のオブジェクト変数を変更します。

変数の複数のトピックについて、私はあなたに11年間のフォローアップを与えるでしょう。

 

おすすめ

転載: www.cnblogs.com/vx-cg248805770/p/11647727.html