Что не так с моим makefile? Не удается найти реализацию

#c #makefile

#c #makefile

Вопрос:

Это мой Makefile:

 CC = g  
CFLAGS = -std=c  11 

default: main

main: core.o
    $(CC) $(CFLAGS) main.cpp core.o -o run.exe

core.o: core.h core.cpp display.h eventhandler.h
    $(CC) $(CFLAGS) -c core.cpp

eventhandler.o: eventhandler.h eventhandler.cpp
    $(CC) $(CFLAGS) -c eventhandler.cpp

clean:
    $(RM) run.exe *.o *~
 

Но при попытке его компиляции я получаю сообщение об ошибке, в котором говорится, что не удается найти реализацию функции, определенной в eventhandler.cpp , но я уверен, что он там есть. Что я делаю не так?

Комментарии:

1. попробуйте: ${CC} ${CFLAGS} -o prog main.cpp core.cpp display.cpp eventhandler.cpp

Ответ №1:

Это

 main: core.o
    $(CC) $(CFLAGS) main.cpp core.o -o run.exe
 

Должно быть

 main: core.o eventhandler.o
    $(CC) $(CFLAGS) main.cpp core.o eventhandler.o -o run.exe