0

だから私は3つのファイルを持っています:

jarvismarch.c (includes "jarvismarchtools.h")
jarvismarchtools.c
jarvismarchtools.h

makefile上記のファイルをコンパイルするためにを使用したいと思います。どうすればいいですか?

4

2 に答える 2

2

典型的な最小限のmakefileは次のようになります。

OBJ = jarvismarch.o jarvismarchtools.o

all: $(OBJ)
        $(CC) -o jarvismarch $(OBJ)

asveikauのコメントを考慮に入れて、クリーンなターゲットを追加すると、次のようになります。

OBJ = jarvismarch.o jarvismarchtools.o
BIN = jarvismarch

CFLAGS = -Wall -pedantic -ansi

all: $(BIN)

$(BIN): $(OBJ)
    $(CC) -o @ $(OBJ)

clean:
    rm -f $(OBJ) $(BIN)

(Windowsユーザーは.obj代わりにを使用する必要があります.o

makeの使用は強くお勧めしません。最初は簡単かもしれませんが、プロジェクトが大きくなったら、SConsCMakeBoost.Buildなどのより完全なビルドツールを強くお勧めします。

于 2013-02-02T02:57:17.603 に答える
1

jarvismarch.exeをビルドしようとしていると仮定します。

jarvismarch.exe : jarvismarch.o jarvismarchtools.o
    $(CC) -o $@ $^

2行目の先頭の空白は、TAB文字である必要があります。

于 2013-02-02T03:19:43.090 に答える