我的FindEigen.cmake如下:
find_package(Eigen REQUIRED)
这是从我的CMakeLists.txt文件中调用的,如下所示:
Could NOT find EIGEN (missing: EIGEN_INCLUDE_DIR)
我从cmake gui回来的消息是:
ii = 0:0.1:3
但这不是错误,配置成功完成。我的理解是,REQUIRED选项意味着如果找不到包,cmake应该抛出错误并停止,并且FIND_PACKAGE_HANDLE_STANDARD_ARGS方法应该强制执行。但这对我来说并没有发生。任何想法为什么不呢?
答案 0 :(得分:1)
我有一个类似的问题,这是由于find_package(Eigen REQUIRED)
和find_package_handle_standard_args(EIGEN)
中本征库使用的不同命名引起的。例如。您需要将EIGEN
更改为Eigen
。
在两个地方使用相同的命名应该可以解决此问题,并可以使用@debris建议的REQUIRED_VARS
。
答案 1 :(得分:0)
尝试使用required_vars
FIND_PACKAGE_HANDLE_STANDARD_ARGS(EIGEN REQUIRED_VARS EIGEN_INCLUDE_DIR)