これはmakefileの一部にすぎません。何が起こっているのかよくわかりません。
OBJS = $(SRCS:$(SRC)/%.cpp=$(OBJ)/%.o)
$(OBJS):$(OBJ)/%.o: $(SRC)/%.cpp | print-opts
$(cc-command)
私が理解しているのは、これらの行が「print-opts」の後に「cc-command」を使用して.cppファイルを.oにコンパイルすることだけです。しかし、私はセマンティクスを理解していません。
'OBJS'のマクロを展開すると、次のようになります。
$(SRCS:$(SRC)/%.cpp=$(OBJ)/%.o) : $(OBJ)/%.o: $(SRC)/%.cpp | print-opts
$(cc-command)
私には、「$(SRCS:$(SRC)/%.cpp=$(OBJ)/%.o)」のように見えますが、$(SRC)のすべての.cppは$( OBJ)ですが、これは$(OBJ)/%。oに依存します。これは、$(SRC)/%。cppに依存します。これは意味がありません...
ここでの等号の意味と、複数のコロンの意味がわかりません。