CMake INCLUDE_DIRS变量没有正确的路径

问题描述

我有一个项目正在尝试使用CMake在基于Linux的HPC系统上进行编译。该项目依赖于Eigen3程序包,因此我在CMAKE_PREFIX_PATH变量中指定了Eigen3配置文件的路径,如下所示(摘自我的CMakeLists.txt文件)。

set(CMAKE_PREFIX_PATH "/gpfs/loomis/apps/avx/software/Eigen/3.3.7")
find_package(Eigen3 3.3 required NO_MODULE)
message(STATUS ${EIGEN3_INCLUDE_DIR})
include_directories(SYstem ${EIGEN3_INCLUDE_DIR})

注意:目录@ CMAKE_PREFIX_PATH包含配置文件所在的安装树/share/eigen3/cmakeCMAKE_PREFIX_PATH还包含一个/include目录。因此,据我了解,find_package检索Eigen3的位置应该没有任何困难。

但是,message命令的结果为:

-- /gpfs/loomis/apps/avx/software/Eigen/3.3.7//gpfs/loomis/apps/avx/software/Eigen/3.3.7/include

不是所需的/gpfs/loomis/apps/avx/software/Eigen/3.3.7/include。因此include_directories实际上没有传递正确的包路径。我该如何解决

提前谢谢!

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)