Makefile exporta el archivo .o a una ruta diferente a .cpp

Así que mi tarea es simple, he creado el makefile (Nuevo con makefiles) y quiero mantener mis archivos .o en una carpeta diferente para tener un directorio más limpio y permitir que otros utilicen los archivos .o.

Busqué y encontré muchas soluciones que apuntan a usar -o $ <$ @

Sin embargo, me está dando eso.g++: cannot specify -o with -c or -S with multiple files

Esto es lo que quiero hacer:

$(OBJECT_PATH)/file1.o: $(SOURCE_PATH)/file2.cpp $(SOURCE_PATH)/file1.cpp
        $(CC) $(CFLAGS) $(SOURCE_PATH)/file2.cpp $(SOURCE_PATH)/file1.cpp -o $@

file1.cpp tiene #include "file1.h", así que por lo que leí debería incluir file1.cpp en las dependencias. Sin embargo, ahora no puedo exportar a un directorio diferente.

¿Hay alguna solución? ¿O tengo mal el concepto?

Respuestas a la pregunta(2)

Su respuesta a la pregunta