【发布时间】:2018-12-02 10:34:42
【问题描述】:
我正在编译一个第三方库,它使用以下命令来查找 Eigen3:
find_package( PkgConfig )
pkg_check_modules( EIGEN3 REQUIRED eigen3 )
include_directories(${EIGEN3_INCLUDE_DIRS})
find_package( PkgConfig ) 命令运行正确,因为我指定了PKG_CONFIG_EXECUTABLE 变量。但是pkg_check_modules( EIGEN3 REQUIRED eigen3 )返回错误:
-- 检查模块 'eigen3'
-- 找不到包'eigen3'
Eigen3 的official webpage 说“没有必要使用 CMake 或安装任何东西。”我花了很长时间才意识到这种说法是错误的。所以我运行以下代码来编译和安装 Eigen3(版本 3.3.5):
cmake -DCMAKE_CONFIGURATION_TYPES=Release -DCMAKE_INSTALL_PREFIX=E:\3rd-parties\eigen-3.3.5\install_ -G"Visual Studio 14 2015 Win64" ..
编译和安装过程都成功了,因为我在VS2015中没有看到任何失败。但是,当我回到 3rd 方库的 build 文件夹并再次运行 cmake 时,我得到了完全相同的错误。 Eigen3 official website只提供了使用find_package的指令,而不提供pkg-config.exe,所以我接下来搜索谷歌找到了这个thread。答案说我们需要“在 eigen3 cmake 中启用 pkg-config 支持”。我不知道如何启用它。为此目的是否有任何特定的 CMake 变量?由于这是一个新问题,Eigen's main page 说“要获得帮助,stackoverflow 是您最好的资源。”所以我来这里寻求帮助。我的问题是:如何在 eigen3 中启用 pkg-config 支持?或者换一种说法:如何传递pkg_check_modules( EIGEN3 REQUIRED eigen3 ) cmake 命令?非常感谢。
PS:我正在使用 Windows 10。
【问题讨论】:
标签: cmake eigen3 pkg-config