我使用cmake在linux中的g2o图形库中运行示例程序。我收到以下错误。我正在运行的文件具有以下代码
#include <Eigen/Core>
导致错误。
[ 3%] Building CXX object data_fitting/CMakeFiles/circle_fit.dir/circle_fit.o g2o/trunk/g2o/examples/data_fitting/circle_fit.cpp:27:2 3: fatal error: Eigen/Core: No such file or directory
compilation terminated.
make[2]: *** [data_fitting/CMakeFiles/circle_fit.dir/circle_fit.o] Error 1
make[1]: *** [data_fitting/CMakeFiles/circle_fit.dir/all] Error 2
我是使用cmake的新手。这是因为CMakeLists.txt文件中的错误吗?
INCLUDE_DIRECTORIES(${CSPARSE_INCLUDE_DIR})
ADD_EXECUTABLE(circle_fit
circle_fit.cpp
)
SET_TARGET_PROPERTIES(circle_fit PROPERTIES OUTPUT_NAME circle_fit${EXE_POSTFIX})
TARGET_LINK_LIBRARIES(circle_fit core solver_csparse)
ADD_EXECUTABLE(curve_fit
curve_fit.cpp
)
SET_TARGET_PROPERTIES(curve_fit PROPERTIES OUTPUT_NAME curve_fit${EXE_POSTFIX})
TARGET_LINK_LIBRARIES(curve_fit core)
我现在正忙着这一天。可用于cmake的教程也没有多大帮助。我该如何解决这个错误?
我尝试为/ usr / include / eigen3添加include语句作为建议的第一个答案。但我在/ usr / include目录中找不到任何名为eigen3的文件。
还有其他可能的路径吗?我怎样才能在linux中找到它?
答案 0 :(得分:1)
尝试在cmake中包含eigen include文件夹。
INCLUDE_DIRECTORIES( /usr/include/eigen3 )
它对我有同样的错误。
答案 1 :(得分:0)
自述文件说你需要安装libeigen3-dev(https://svn.openslam.org/data/svn/g2o/trunk/README)
如果您使用的是Ubuntu,请使用apt-get或synaptic安装它。
对于Windows:
“如果您在Windows上进行编译,请下载Eigen3并将其解压缩。 在cmake-gui中,将变量G2O_EIGEN3_INCLUDE设置为该目录“
请阅读'自述':)