but it set Ceres_FOUND to FALSE so package “Ceres“ is considered to be NOT FOUND.

本文档描述了在使用Ceres Solver时遇到的Eigen库版本不匹配问题,该问题可能导致One Definition Rule的违反,从而引起潜在的程序错误。解决方案是重新下载并安装Ceres Solver的特定版本,确保其与使用的Eigen版本一致。步骤包括从ceres-solver.org下载源码,解压,创建build目录,配置,编译并安装。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

问题描述:

CMake Error at /usr/local/lib/cmake/Ceres/CeresConfig.cmake:91 (message): Failed to find Ceres - Found Eigen dependency, but the version of Eigen found (3.3.4) does not exactly match the version of Eigen Ceres was compiled with (3.2.92). This can cause subtle bugs by triggering violations of the One Definition Rule. See the Wikipedia article http://en.wikipedia.org/wiki/One_Definition_Rule for more details Call Stack (most recent call first): /usr/local/lib/cmake/Ceres/CeresConfig.cmake:226 (ceres_report_not_found) LIVOX_COLOR/CMakeLists.txt:17 (find_package) CMake Error at LIVOX_COLOR/CMakeLists.txt:17 (find_package): Found package configuration file: /usr/local/lib/cmake/Ceres/CeresConfig.cmake but it set Ceres_FOUND to FALSE so package "Ceres" is considered to be NOT FOUND.


解决方案:

wget ceres-solver.org/ceres-solver-1.14.0.tar.gz

tar xvf ceres-solver-1.14.0.tar.gz
 
cd ceres-solver-1.14.0

mkdir build
 
cd build
 
cmake ..

make -j4

make test
 
sudo make install

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值