LINUX.ORG.RU

История изменений

Исправление kachsheev, (текущая версия) :

Ну да, почти. Правда особой силы не сыграло.

$(Objects): $(ObjPath)/%.o : $(subst _,/,%.cpp)
	$(CC) $(Flags) $(Flag_Obj) $(Libs) -c $< -o $@
make: *** Нет правила для сборки цели «src_Test_Test.cpp», требуемой для «obj/src_Test_Test.o».  Останов.

По идее, на место процента должна была подставиться строка с именем файла. Но нет.

Или я не правильно всё понимаю? Просто в таком виде всё работает:

$(ObjPath)/%.o :
	$(CC) $(Flags) $(Flag_Obj) $(Libs) -c $(subst _,/,$(notdir $(subst .o,.cpp,$@))) -o $@

Исходная версия kachsheev, :

Ну да, почти. Правда особой силы не сыграло.

$(Objects): $(ObjPath)/%.o : $(subst _,/,%.cpp)
	$(CC) $(Flags) $(Flag_Obj) $(Libs) -c $< -o $@
make: *** Нет правила для сборки цели «src_Test_Test.cpp», требуемой для «obj/src_Test_Test.o».  Останов.

По идее, на место процента должна была подставиться строка с именем файла. Но нет.

Или я не правильно всё понимаю?