在学习SLAM十四讲的时候,需要使用Sophus,但是在编译Sophus的过程中,总是存在报错。
在执行 make -j2 后,我遇到的错误提示其中有一段是:Eigen::Map<RxSO3Type> shallow_copy = map_of_rxso3;
,
还有 cc1plus: all warnings being treated as errors
解决的办法:
打开CMakeLists.txt文件,修改第18行和第22行(两处)附近的:
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Werror -Wextra -Wno-deprecated-register -Wno-deprecated-register -Qunused-arguments -fcolor-diagnostics")
,
将其中的-Werror
删除,保存,然后再执行编译过程。
可以先复制粘贴这一句,注释,然后删除-Werroe
,以免出现别的问题。