当运行我这个CGAL程序包括例如:CGAL错误:Eigen3需要 - >征似乎是好的,虽然
#include <CGAL/Epick_d.h>
我得到的读两个错误消息:
C1189 #error: Eigen3 is required
和
#error directive: Requires Eigen
它们分别指向cartesian_la_base.h和constructors.h。 在那里,我发现下面的代码:
#ifndef CGAL_EIGEN3_ENABLED
#error Requires Eigen
#endif
所以,在我看来,该CGAL_EIGEN3_ENABLED标志未设置。虽然我无法找到CGAL或Eigen的问题,但我为此感到有些困惑。 我为.../Eigen设置了一个环境变量,并将其包含在属性 - > c/C++ - >常规 - >其他包含目录以及链接器 - >常规中的 下。
奇怪的是,似乎没有人会收到相同的错误信息,从我用Google搜索这个问题的成功来判断。
我使用Visual Studio 2015.
希望这是足够的信息。 干杯
您的计算机上是否有Eigen副本?在解决方案目录中?别的地方?如果是这样,在哪里(完整的编辑路径)?你有什么相关的额外包含目录? –
你或cmake没有定义'CGAL_EIGEN3_ENABLED'?如果(EIGEN3_FOUND) 包含($ {EIGEN3_USE_FILE}) endif()'(对于注释中缺少换行符感到抱歉),您的cmake文件是否包含以下行:'find_package(Eigen3 3.1.0) ? –
只需定义'CGAL_EIGEN3_ENABLED',你应该没问题。当在cmake中包含Eigen的使用文件时,应该设置此标志。 – sloriot