我一直在学习c并遇到以下问题:
我有一个类似的目录结构:
- current directory
- Makefile
- include
- header.h
- src
- main.cpp
我的header.h:
#include
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<
}
我的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) $< -o $@
clean:
rm -rf *o hello
make的输出为:
g++ -c -Wall src/main.cpp -o main.o
src/main.cpp:1:20: fatal error: header.h: No such file or directory
compilation terminated.
Makefile:10: recipe for target ‘main.o’ failed
make: *** [main.o] Error 1
我在这里犯了什么错误.真令人沮丧真的很感谢任何建议!