You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

编译依赖Eigen与OMPL的Amino项目时遇编译器版本错误

构建依赖OMPL与Eigen的Amino项目时Eigen编译报错的解决

问题描述

构建依赖Open Motion Planning Library(OMPL)和Eigen的大型项目Amino时,执行make命令后出现大量编译错误(约20000行),起始错误为:

/usr/local/include/eigen3/Eigen/src/Core/util/Macros.h:711:2: error: #error This compiler appears to be too old to be supported by Eigen

所有错误均与Eigen编译失败直接相关,与项目本身代码无关,预期make能成功执行完成。

系统环境

  • Ubuntu 22.04.2 LTS x86_64
  • Eigen 3.3.7-2(apt安装)
  • g++ 11.3.0
  • 项目使用makefile.am构建,需先运行autoreconf和./configure生成Makefile

尝试过的无效解决方法

  • 按官方说明修改ompl.pc的Cflags配置
  • 切换编译标准至-std=c++11/-std=c++17
  • 移除编译命令中的-std=参数
  • 源码安装Eigen
  • 检查Eigen、OMPL及编译器版本
  • 修改configure文件中的编译标准参数

通过make V=1输出确认编译时使用了-std=c++11,验证了编译标准被强制降低的猜测。

最终解决方案

卸载通过apt安装的Eigen和OMPL,重新从源码编译安装这两个依赖库后,成功构建Amino项目。

内容的提问来源于stack exchange,提问作者Benyamin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.14 09:55:14