当我的计算机中有两个 OpenCV(相同版本)时,如何选择在 CMakeLists.txt 中使用哪个 OpenCV?

How to Choose which OpenCV to use in CMakeLists.txt when I have two OpenCV (same versions) in my computer?

我在电脑上安装了ROS。并且ROS在我的电脑上自动安装了opencv 3.2。由于我需要使用opencv额外模块中的函数,我再次从源代码安装了opencv。

现在我有一个c++项目,我想使用我从源码安装的opencv,而不是ROS自带的。由于都是 3.2 版本,我不知道如何 select 在 CMakeLists.txt.

中使用哪个 opencv

您可以通过将参数更改为 find_package() 来指示在哪里搜索包,例如:

find_package(OpenCV 3.2 QUIET NO_DEFAULT_PATH PATHS "/path/to/custom/opencv")

在这种情况下,CMake 不会在通常的位置搜索 OpenCV,而只会在您指定的路径中搜索。