1.安装homebrew
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2.安装OpenCV
brew install opencv
安装目录为/usr/local/Cellar/opencv
3.使用Opencv
#include<opencv2/opencv.hpp>
遇到的坑
1. fatal error: ‘opencv2/opencv.hpp’ file not found
进入/usr/local/include目录,发现并没有opencv2目录,opencv实际上的目录为/usr/local/include/opencv4/opencv2,因此可以在目录/usr/local/inlcude中创建一个软连接指向opencv2
ln -s /usr/local/include/opencv4/opencv2 opencv2
2.Undefined symbols for architecture x86_64

这种情况是编译时没有连接到所需要的库,
可以有两种方法解决:
1.在CMakeLists.txt中加入
set(OpenCV_DIR /usr/local/Cellar/opencv/4.1.1_2)
里面包含了.cmake文件从而让cmake能找到opencv的头文件和库文件的路径。
然后使用find_package(OpenCV REQUIRED)就能够找到相应的包。
有关cmake及find_package()的详细内容可以参考:
https://blog.csdn.net/godop/article/details/81005455
https://blog.csdn.net/sen873591769/article/details/90183015
https://www.jianshu.com/p/39fc5e548310
2.使用pkg-config命令在编译时指定opencv的头文件和库文件的路径
g++ test.cpp $(pkg-config --cflags --libs opencv)
有关pkg-config的内容可以参考:
https://blog.csdn.net/newchenxf/article/details/51750239
https://blog.csdn.net/godop/article/details/81005455
本文介绍了在MacOS系统中如何使用homebrew来安装OpenCV,详细步骤包括安装homebrew、安装OpenCV以及后续的使用。在实际操作中可能遇到的两个主要问题是:找不到'opencv2/opencv.hpp'头文件和编译时出现'Undefined symbols for architecture x86_64'错误。针对这些问题,提出了创建软链接以及在CMakeLists.txt中使用find_package()或者通过pkg-config命令指定头文件和库路径的解决方案,并给出了相关参考资料。

594

被折叠的 条评论
为什么被折叠?



