《SLAM十四讲》中Sophus库的编译问题

高翔博士的《SLAM十四讲》中,在第四章中要求安装Sophus的非模板库,并且版本改为a621ff。下载完成后,在终端cmake …进行编译可以通过,但紧接着的make步骤就会卡在5%的位置,并报错:

/home/apple/Sophus/sophus/so2.cpp:32:26: error: lvalue required as left operand of assignment
   32 |   unit_complex_.real() = 1.;

我个人的解决方式是打开so2.cpp文件,将下面两行构造函数注释掉。

SO2::SO2()
{
  //unit_complex_.real() = 1.;
  //unit_complex_.imag() = 0.;
}

之后就可以顺利编译了。

你可能感兴趣的:(SLAM)