Cmake 找不到 "openssl" "libcrypto" 和 pkg_search_module

Cmake can't find "openssl" "libcrypto" with pkg_search_module

我正在构建一个项目,在 CMakeLists.txt 中有一些 pkg_search_module 语句,包括两个用于 openssl 和 libcrypto 的语句,它们会在构建过程中引发错误。

pkg_search_module(LIBXML2 libxml-2.0 REQUIRED)
include_directories(${LIBXML2_INCLUDE_DIRS})

pkg_search_module(OPENSSL openssl REQUIRED)
include_directories(${OPENSSL_INCLUDE_DIRS})

pkg_search_module(CONFIG libconfig REQUIRED)
include_directories(${CONFIG_INCLUDE_DIRS})

pkg_search_module(CRYPTO libcrypto REQUIRED)
include_directories(${CRYPTO_INCLUDE_DIRS})

我使用 apt-get 安装了这些包,据我所知,如果 CMake 找不到库,可以给它提供库的位置,但我不确定如何找到它们。

我在终端上得到这个输出:

CMake Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:578 (message):
   None of the required 'openssl' found
Call Stack (most recent call first):
  /home/openair3/openair-cn/build/CMakeLists.txt:814 (pkg_search_module)
  CMakeLists.txt:41 (include)


CMake Error at /usr/share/cmake-3.5/Modules/FindPkgConfig.cmake:578 (message):
  None of the required 'libcrypto' found
Call Stack (most recent call first):
  /home/openair3/openair-cn/build/CMakeLists.txt:820 (pkg_search_module)
  CMakeLists.txt:41 (include)

我在虚拟机上使用 Ubuntu 16.04。

感谢您的建议。

使用 dpkg -L <packagename> 查看软件包的安装位置。

要安装 libcrypto,请使用 sudo apt-get install libssl-dev

希望对您有所帮助。