即使在指定 OpenCV_DIR 之后,CMake 也找不到 OpenCVConfig.cmake

CMake cannot find OpenCVConfig.cmake even after specifying OpenCV_DIR

我是 运行 使用 OpenCV 的 C++ 程序。我已经安装了所有必要的库,但似乎 cmake 找不到 OpenCV 库。

命令 port content opencv3 显示我的 opencv 库位于这些文件夹下:

/opt/local/libexec/

/opt/local/bin/

/opt/local/lib/

/opt/local/include/

但是在 find_package(OpenCV REQUIRED) 之前添加 set(OpenCV_DIR /opt/local) 没有用,每次都会弹出同样的错误。

我该怎么办?

CMake 命令不会通过 , 分隔它们的参数。因此当你写道:

set(OpenCV_DIR, /opt/local/share/OpenCV)

您实际上将名为 OpenCV_DIR, 的变量设置为 /opt/local/share/OpenCV。您可以通过删除逗号来“修复”它:

set(OpenCV_DIR /opt/local/share/OpenCV)

我说“修复”是因为这不是一个好的做事方式。您的 CMakeLists.txt 应该没有绝对路径。相反,在命令行或 preset.

中设置 -DCMAKE_PREFIX_PATH=/opt/local