使用其他目录中的头文件

时间:2014-09-10 08:17:26

标签: makefile webrtc

是否可以使用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

1 个答案:

答案 0 :(得分:2)

您可以通过CPPFLAGS添加该目录,该目录将传递给预处理器

CPPFLAGS = -I/home/footniko/my/webrtcnative/trunk/