ros编译失败

 CMake Error at CMakeLists.txt:7 (find_package):
 By not providing "FindEigen3.cmake" in CMAKE_MODULE_PATH this project has
 asked CMake to find a package configuration file provided by "Eigen3", but
 CMake did not find one
 Could not find a package configuration file provided by "Eigen3" with any
 of the following names:
Eigen3Config.cmake
eigen3-config.cmake
Add the installation prefix of "Eigen3" to CMAKE_PREFIX_PATH or set
"Eigen3_DIR" to a directory containing one of the above files.  If "Eigen3"
provides a separate development package or SDK, be sure it has been
installed.

对于此类问题,可能是几种情况。

一、没有安装相应的依赖包,这些包大多数是独立于ROS的。

解决方法:从github上下载对应的包,安装在catkin_make下,可以自己新建一个文件夹来装这些包,注意,不能放在src下。

之后按照github上的readme或者install进行安装。

对于一般的包,安装的方法是,首先cd进入下载的包,然后

mkdir build && cd build

cmake ..

make

sudo make install

二、对于如下面写的曾经装载了Eigen的情况。在这种条件下,先进入你的工作空间

cd ~/catkin_make

然后locate FindEigen3.cmake

找到了位置后,cp 刚刚找到的位置 src/你报错的package/cmake

这样就可以解决了。

三、有可能本身是外部的包,在CMakeLists.txt文件中,错误的写法是:

find_package(catkin REQUIRED COMPONENTS geometry_msgs roscpp					
roslib
orocos_kdl
tf)

 

正确的写法应该是

find_package(orocos_kdl REQUIRED)

 

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值