Cmake 如何了解 Ubuntu 系统上已安装的库?

How Cmake comes to know about Installed Libraries on Ubuntu System?

我刚刚在我的系统上安装了 OpenCV 和 PCL 库 (ubuntu 16.04)。在我的 C++ 项目 CMakeLists.txt 中,我有以下命令:

find_package(PCL Required)
find_package(OpenCV Required)

我知道,find_package 处于模块模式。虽然,默认情况下 Cmake 3.10 不附带 FindOpenCV.cmake 也不 FindPCL.cmake 例如

中没有类似文件

/usr/share/cmake/Modules

都不在

/usr/local/share/cmake/Modules

为什么 Cmake 没有报错?我试图通过根目录中的 find 命令找到这些文件,但找不到任何地方。

您的文件系统中有文件 FindOpenCV.cmake(模块模式)或 OpenCVConfig.cmake(配置模式)。

你可以通过cmd找到:sudo find / -iname "*opencv*.cmake"