问题描述
我有一个项目正在尝试使用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/cmake
。 CMAKE_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 (将#修改为@)