0

ライブラリを実行するための2つのサンプルファイルがあるオープンソースCプロジェクトに取り組んでいます。1つはexample.cと呼ばれ、もう1つはtest.cと呼ばれます。

Makefileは次のもので構成されています。

テスト:test.c src / term.c
            $(CC)$ ^ -o $ @

例:example.c src / term.c
            $(CC)-std = c99 $ ^ -o $ @

.PHONY:テスト例

ただし、makeを実行してから./testを実行すると、テストが実行されますが、./ exampleを実行すると、実行されません。なぜ何かアイデアはありますか?

4

1 に答える 1

1

入力するだけでmake、最初のターゲットが実行されます。あなたの場合はそのテストです。したがって、test実行可能ファイルのみを取得します。ただし、入力するとmake exampleexampleターゲットが実行され、exampleバイナリが取得されます。Makefileのルールを一新する必要があると思います。基本的な概念についてはこれを参照するか、詳細な理解についてはこれを参照してください。

于 2013-01-31T07:28:32.297 に答える