私は本当にメイクファイルに入ることができません。以前のプロジェクトでは、すべてのコンパイル タスクをMakefileにハードコーディングしました。
all: compile_a compile_b compile_c
compile_a:
${CC} ${CFLAGS} ${A_SRC} -o ${A_OUT}
等々。
しかし、最新のプロジェクトは以前のどのプロジェクトよりも多くのファイルを持っているので、より良い make タスクを書きたいと思っています。:-P
私が欲しいもの:
- それらすべてを支配する 1 つのタスク (単に
make projectname
またはmake all
、ご存知ですか?) - すべての C ファイルをコンパイルするための 1 つのタスク (この構文について何か読んだこと
%.o: %.c
がありますが、実際にはわかりませんでした) - リンクのための 1 つのタスク (すべての .o ファイルを取得し、それぞれをハードコーディングせずにリンクする方法は?)
- 掃除のタスクが 1 つ (ああ、私はこれを行うことができます!)
プロジェクトの構造は次のとおりです。
bin (binary goes here!)
src
some
directories
are
here
オブジェクト ファイル用のディレクトリが必要かどうかわかりませんが、./bin
.
簡単な言葉で説明できる人が必要なのかもしれません。
編集:誰かが指摘したように、本当の質問はないので、ここに行きます:
- すべての C ファイルを再帰的にコンパイルする方法
bin/(filename).o
.o
名前を知らずに「bin /」内のすべてのファイルをリンクする方法
たぶんこれが役立ちます。