我正在尝试在macOS 10.14.3(Mojave)上使用OpenCV编译Yolo/darknet。这基本上是我所做的:
我通过brew install opencv
安装了OpenCV,它给了我版本4.1.0(通过opencv_version
确认)。
根据文档,./darknet imtest data/eagle.jpg
可以正常工作,因此我知道OpenCV安装成功。接下来,我尝试再次make
darknet。
最初,它抱怨找不到opencv.pc,但是我做了一个符号链接(symbolic link)opencv.pc
,指向opencv4.pc
中的/usr/local/lib/pkgconfig/
。
但是现在它抱怨以下内容:
[hobbes3@hobbes3-4] ~/darknet $ make
g++ -Iinclude/ -Isrc/ -DOPENCV `pkg-config --cflags opencv` -Wall -Wno-unused-result -Wno-unknown-pragmas -Wfatal-errors -fPIC -Ofast -DOPENCV -c ./src/image_opencv.cpp -o obj/image_opencv.o
In file included from ./src/image_opencv.cpp:5:
In file included from /usr/local/Cellar/opencv/4.1.0_2/include/opencv4/opencv2/opencv.hpp:52:
In file included from /usr/local/Cellar/opencv/4.1.0_2/include/opencv4/opencv2/core.hpp:52:
/usr/local/Cellar/opencv/4.1.0_2/include/opencv4/opencv2/core/cvdef.h:666:4: fatal error: "OpenCV 4.x+ requires enabled C++11 support"
# error "OpenCV 4.x+ requires enabled C++11 support"
^
1 error generated.
make: *** [obj/image_opencv.o] Error 1
接下来我需要做什么?
最佳答案
我可能只想尝试朋克并手动在Makefile
中编辑CXX标志。
如果您查看当前版本的line 30,则可以添加-std=c++11
并查看再次运行make时会发生什么。请记住先做make clean
。
C++ 11主要是向后兼容的,因此它可能会起作用。