很意外地遇到一个Eigen相关的错误:
/usr/local/include/eigen3/Eigen/src/Core/products/Parallelizer.h:162:40: error: ‘eigen_assert_exception’ is not a member of ‘Eigen’
if (errorCount) EIGEN_THROW_X(Eigen::eigen_assert_exception());
按照提示, 问题处在/usr/local/include/eigen3/Eigen/src/Core/products/Parallelizer.h:162:40的位置;
在网上搜索之后发现, 这个bug在比较新的eigen版本中已经被消除;
相关的讨论在这个网页:https://gitlab.com/libeigen/eigen/-/issues/2011
但是要解决这个问题,其实不需要再重新下载eigen, 对应的分支上,找到解决该问题所对应的commit,修改自己的代码即可:
这是对应的diff文件,大家按照这个删掉红色的部分,添加绿色的部分就可以解决啦;
上图的网址是:https://gitlab.com/libeigen/eigen/-/commit/ef3cc72cb65e2d500459c178c63e349bacfa834f大家可以直接复制粘贴;