Makefile для программы на C++ с opencv ?
Я попытался скомпилировать свою программу в терминале. Это прекрасно работает таким образом. Но теперь у меня есть несколько файлов, и я предпочел бы использовать makefile вместо этого, я попытался создать makefile для моей программы c++, но я столкнулся с ошибкой "файл opencv2/opencv.hpp не найден". Но я могу правильно скомпилировать первый метод (вручную) и потерпел неудачу с Makefile. Что я сделал не так с моим файлом makefile ? спасибо
Что я уже пробовал:
вот как я вручную компилирую его один за другим :
g++ $(pkg-config --cflags --libs opencv4) -std=c++11 one.cpp -o one
и вот как я создаю свой Makefile, где я получил ошибку библиотеки :
BIN_DIR= . CC = g++ CFLAGS = -std=c++11 OPENCV = pkg-config --cflags --libs opencv4 LIBS = $(OPENCV) all: $(BIN_DIR)/one $(BIN_DIR)/two $(BIN_DIR)/one: one.o ${CC} -o $(BIN_DIR)/one one.o $(LIBS) $(BIN_DIR)/two: two.o ${CC} -o $(BIN_DIR)/two two.o $(LIBS) one.o: one.cpp ${CC} $(CFLAGS) -c one.cpp two.o: two.cpp ${CC} $(CFLAGS) -c two.cpp clean: rm -f *.o rm -f $(BIN_DIR)/one rm -f $(BIN_DIR)/two allclean: rm -f *.o rm -f $(BIN_DIR)/one rm -f $(BIN_DIR)/two rm -f Makefile
Richard MacCutchan
Вам нужно задать переменную для расположения заголовочных файлов opencv, чтобы компилятор знал, где ее найти.