に依存します(悪い英語のため申し訳ありませんが、私はドイツ語だ)GNUオート依存関係がディレクトリ
こんにちはプログラマ、
私はGNUが私のC++プロジェクトのために作る使用していますが、私はといくつかの問題があることを確認してくださいauto/dependencies: "make objects/file.o"を実行すると、source/file.cppに含まれるファイルが変更された場合でも、objects/file.oはすでに最新であることがわかります。 奇妙なことは、DEP_DIRとOBJ_DIRを "。"に変更した場合です。すべてが機能する。ここ は(不完全)私のメイクです:
SRC_DIR := source
DEP_DIR := dependencies
OBJ_DIR := objects
$(shell mkdir -p $(dir EXE_PATH))
-include $(addprefix $(DEP_DIR)/, $(NAMES:=.d))
$(OBJ_DIR)/%.o : $(SRC_DIR)/%.cpp
$(CXX) -c $(CFLAGS) $(SRC_DIR)/$*.cpp -o [email protected]
$(CXX) -MM $(CFLAGS) $^ > $(DEP_DIR)/$*.d
$(EXE_PATH) : $(addprefix $(OBJ_DIR)/, $(NAMES:=.o))
$(CXX) $(LINK_FLAGS) $^ -o $(EXE_PATH)
all : $(EXE_PATH)
run :
$(EXE_PATH)
carun : $(EXE_PATH)
$(EXE_PATH)
clean:
rm -f EXE_PATH
誰も私にこの奇妙な問題を説明することができれば、私は感謝するでしょう。
「CPP」ではなく「CXX」である必要があります。 'CPP'はCプリプロセッサ、' CXX'はC++コンパイラ – igagis
そうでなければ、https://github.com/igagis/prorab/blob/master/wiki/TutorialBasicConcepts.mdを使うことをお勧めしますあなたとあなたはそれについて心配する必要はありません。 – igagis