我的編譯器不會發現在一個子文件夾的標題包含在CPP文件 #include "comm\ComPublic.h"
頁眉沒有找到
我的主人的Makefile:
SUB_POUET=Pouet \
PouetTech \
PouetPrivate
all: $(SUB_POUET)
PouetTech:
@(cd PouetTech && $(MAKE))
Pouet:
@(cd Pouet && $(MAKE))
PouetPrivate:
@(cd PouetPrivate && $(MAKE))
.PHONY: clean mrproper $(SUB_POUET)
clean:
@(cd $(SUB_POUET) && $(MAKE) [email protected])
mrproper: clean
@(cd $(SUB_POUET) && $(MAKE) [email protected])
子makefile1:
include ../Definitions.mif
SRC=$(wildcard *.cpp)
OBJ_FILES=$(addprefix $(OBJECTS_DIR)/,$(notdir $(SRC:.cpp=.o)))
INCLUDES=-I../PouetTech -I../../libs/MPSSE -I../../libs/FTDI/$(OS) -I../shared -I../../libs/libmodbus-3.0.6/src
CXXFLAGS+=$(INCLUDES)
all: $(OBJ_FILES)
$(OBJECTS_DIR)/%o: %cpp | objects_dir
$(CXX) -o [email protected] -c $< $(CXXFLAGS)
objects_dir:
mkdir -p $(OBJECTS_DIR)
.PHONY: clean mrproper
clean:
rm -rf *.o
Sub-makefile 2
include ../Definitions.mif
SRC=$(wildcard *.cpp)
OBJ_FILES=$(addprefix $(OBJECTS_DIR)/,$(notdir $(SRC:.cpp=.o)))
INCLUDES=-I../PouetTech -I../Pouet -I../shared
CXXFLAGS+=$(INCLUDES)
all: $(OBJ_FILES)
$(OBJECTS_DIR)/%o: %cpp | objects_dir
$(CXX) -o [email protected] -c $< $(CXXFLAGS)
objects_dir:
mkdir -p $(OBJECTS_DIR)
.PHONY: clean mrproper
clean:
rm -rf *.o
子生成文件3是相同的2 而我的文件夾是這樣的:在第三生成文件(PouetPrivate)過程中出現
src
|_makefile
|_Pouet
| |_makefile
|_PouetTech
| |_makefile
|_PouetPrivate
| |_makefile
|_shared
|_comm
|_ComPublic.h
的問題,但「共用」的文件夾被包括在生成文件。
如果我將-I../shared/comm
添加到生成文件並將包含更改爲#include "ComPublic.h"
它的作品。但我不想手動包含makefile中的所有文件夾。
這可能只是一個簡單的錯誤,但我沒有在生成文件太多經驗
此外,它的使用MinGW的時候做工精細/窗口或Visual Studio下MSYS
編輯:和我有同樣的問題與另一個「通訊」子文件夾
這的確很簡單,謝謝 –