Как вам уже ответили в комментарии, вы просто не указали параметр для -o.
cc -o tr main_0.o main_1.o
Вообще, никогда не нужно использовать абсолютные пути в Makefile.
И ещё, если вы поменяете свой header.h, то make об этом не узнает.
У компиляторов есть специальные опции, чтобы сгенерировать зависимости .c файлов от заголовков.
Вот вам универсальный Makefile для простых проектов:
PROJECT = tr
SOURCES = main_0.c main_1.c
OBJECTS = $(SOURCES:.c=.o)
HEADER_DEPS = $(SOURCES:.c=.d)
.PHONY: all
all: $(PROJECT)
$(PROJECT): $(OBJECTS)
$(CC) $(CFLAGS) $^ -o $@
-include $(HEADER_DEPS)
%.o: %.c
$(CC) $(CFLAGS) -MM -MT $@ -MF $(patsubst %.o,%.d,$@) $<
$(CC) $(CFLAGS) -c $< -o $@
.PHONY: clean
clean:
$(RM) $(PROJECT) $(OBJECTS) $(HEADER_DEPS)