0

makefileを使ってsrcフォルダとincludeからなるプロジェクトをビルドする方法を教えてください。C 上のプロジェクト。src フォルダーに 3 つのファイルがあります: main.c test.c foo.c と、フォルダー システムを含むフォルダーがあり、そこにファイルがあります: test.h と foo.h に書き込みたいmain.c。たとえば、システムが include フォルダー内にある #include です。

わかりにくいのでmakefileの例を教えてください。答えてくれてありがとう!

4

1 に答える 1

1

あなたは私たちに多くの情報を提供していないので、推測する必要があります。と の 3 つのファイルがあるfoo.cbar.cbaz.cますsrc/。また、makefile が親ディレクトリ (src/およびも含まinclude/れる) にあり、オブジェクト ファイルと実行可能ファイルをそこにビルドしたいとしますfoo。これで十分です:

VPATH = src
CFLAGS += -Iinclude

foo: foo.o bar.o baz.o
    $(CC) $^ -o $@

これは大雑把なメイクファイルです。基本に慣れれば、より洗練されたバージョンも可能です。

編集:

走ろうとする前に歩くことを学ばなければなりません。複雑なディレクトリ構造を処理できるメイクファイルを作成する場合は、より単純なメイクファイルを理解する必要があります。メイクファイルと同じディレクトリにあるソース ファイル ( foo.c) とヘッダー ファイル ( )の両方のすべてのファイルから始めます。foo.h次に、上記の makefile の最初の 2 行を省略できます。およびを作成する前にそのmakefile を理解していることを確認してください。これらの手順を省略しようとすると、より複雑なケースではうまくいきません。src/VPATH = srcinclude/CFLAGS += -Iinclude

于 2013-09-23T19:18:01.187 に答える