Включить заголовочный файл в другой каталог в C ++

Я изучал c ++ и столкнулся со следующим вопросом: у меня есть такая структура каталогов:

 - current directory

  - Makefile

  - include

     - header.h

  - src

      - main.cpp

мой header.h:

#include <iostream> 

using namespace std;

void print_hello();

мой main.cpp:

#include "header.h"

int main(int argc, char const *argv[])
{
    print_hello();
    return 0;
}

void print_hello()
{
    cout<<"hello world"<<endl;
}

мой Makefile:

CC = g++
OBJ = main.o
HEADER = include/header.h 
CFLAGS = -c -Wall 

hello: $(OBJ) 
    $(CC) $(OBJ) -o $@

main.o: src/main.cpp $(HEADER)
    $(CC) $(CFLAGS) 
CC = g++
OBJ = main.o
HEADER = include/header.h 
CFLAGS = -c -Wall 

hello: $(OBJ) 
    $(CC) $(OBJ) -o $@

main.o: src/main.cpp $(HEADER)
    $(CC) $(CFLAGS) $< -o $@

clean: 
    rm -rf *o hello
lt; -o $@ clean: rm -rf *o hello

И вывод make:

g ++ -c -Wall src / main.cpp -o main.o src / main.cpp: 1: 20: фатальная ошибка: header.h: компиляция такого файла или каталога не прекращена. Makefile: 10: рецепт для цели 'main.o' не выполнен make: *** [main.o] Ошибка 1

Какие ошибки я сделал здесь. Это расстраивает. Очень ценю любой совет!

Ответы на вопрос(1)

Ваш ответ на вопрос