是否可以使用makefile在其他目录中使用头文件构建程序? 例如,我有一些文件(名为client.cc),其中包含:
...
#include "talk/examples/peerconnection/client/conductor.h"
#include "talk/examples/peerconnection/client/main_wnd.h"
...
这包括在另一个目录中。我如何将它添加到我的makefile中? 此时,我有Makefile,其中包含:
CXX=arm-none-linux-gnueabi-g++
INC=-I/home/footniko/my/webrtcnative/trunk/
TARGET=$(shell basename `pwd`)
SOURCES=$(wildcard *.cc)
OBJECTS=$(SOURCES:%.cc=%.o)
all: $(TARGET)
$(OBJECTS): $(SOURCES)
$(TARGET): $(OBJECTS)
$(CXX) -o $(TARGET) $(LDFLAGS) $(INC) $(OBJECTS) $(LOADLIBES) $(LDLIBS)
clean:
$(RM) $(OBJECTS) $(TARGET)
.PHONY: all clean
其中/home/footniko/my/webrtcnative/trunk/
- 是我标题的绝对路径。但是当我想要制作时,有这个错误:
client.cc:28:59: fatal error: talk/examples/peerconnection/client/conductor.h: No such file or directory
答案 0 :(得分:2)
您可以通过CPPFLAGS
添加该目录,该目录将传递给预处理器
CPPFLAGS = -I/home/footniko/my/webrtcnative/trunk/