Я использую opencv в своем проекте, и теперь я компилирую проект в статическую библиотеку, используя makefile, но всегда выводлю 'фатальную ошибку:' файл cv.h не найден '.Я искал этот сайт и в других местах, это не то, что мне нужно.Я знаю только немного синтаксиса makefile.Что мне делать?
Makefile
LIBS_DIR = ./lib/
OBJS_DIR = ./obj/
DEPENDENT_DIR = ./dependent/
HEADER_PATH = -I./include -I./implement -I.
LIB_PATH = -L./lib
SRCDIRS := $(patsubst ./%, %, $(shell find . -type d))
SRCS_CXX := $(foreach dir, $(SRCDIRS), $(wildcard $(addprefix $(dir)\/*, .cpp)))
OBJS := $(SRCS_CXX:.cpp=.o)
%.o: %.cpp
@echo "---------- .o begin ----------"
$(CXX) -c $< $(HEADER_PATH)
$(CXX) -o $@ $^ $(LIB_PATH)
mv $@ $(OBJS_DIR)
%.d: %.cpp
@echo "---------- dependent begin ----------"
@set -e; \
rm -f $@; \
$(CXX) -MM $< > $@.tmp; \
sed 's,\($*\)\.o[ :]*,\1.o $@ : ,g' < $@.tmp > $@; \
rm -f $@.tmp
mv $@ $(DEPENDENT_DIR)
-include $(DEPS)
.PHONY: clean
clean:
rm -f obj/*.o lib/*.a dependent/*.d
rm -rf SunWS_cache
В моем файле
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
Каталог файлов
Использован make-файл
Новая ошибка
Я изменил HEADER_PATH
как HEADER_PATH = -I./include/opencv -I./include/opencv2 -I./implement -I.
, но новыйпоявилась ошибка, fatal error: 'opencv2/core/core_c.h' file not found
.
Я пытаюсь добавить новый путь к подпапке, например -I./include/opencv -I./include/opencv2 -I./include/opencv2/core -I./implement -I.
, эта ошибка все еще выводится, команда -I
не может автоматически найти путь к подпапке?я делаю что-то не так?