ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

CMake Error: Could not find a package configuration file provided by "Eigen3"

asked 2018-11-30 03:55:33 -0500

jotwe gravatar image

Hello,

I try to build a project on Ubuntu 16.04.5 and Kinetic. I keep getting the following CMake error:

CMake Error at /opt/ros/kinetic/share/catkin/cmake/catkinConfig.cmake:83 (find_package):
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.
Call Stack (most recent call first):
frontend/interactive_marker_node/CMakeLists.txt:5 (find_package)

The package libeigen3-dev is installed and the file Eigen3Config.cmake can be found in /usr/lib/cmake:

 $ apt list libeigen3-dev
 Listing... Done
 libeigen3-dev/xenial,xenial,now 3.3~beta1-2 all [installed]
 $ ls /usr/include/eigen3/
 Eigen  signature_of_eigen3_matrix_library  unsupported
 $ ls /usr/lib/cmake/eigen3/
 Eigen3Config.cmake  UseEigen3.cmake

The mentioned CMakeLists.txt is given in the following listing:

cmake_minimum_required(VERSION 2.8.3)
project(interactive_marker_node)
add_compile_options(-std=c++11)

find_package(
  catkin REQUIRED COMPONENTS
  Eigen3
  roscpp
  rospy
  dynamic_reconfigure
  moveit_visual_tools
)
if(NOT EIGEN3_INCLUDE_DIRS)
  set(EIGEN3_INCLUDE_DIRS ${EIGEN3_INCLUDE_DIR})
endif()
[...]

I tried to set Eigen3_DIR, CMAKE_PREFIX_PATH and CMAKE_INCLUDE_PATH as well as upgrading and reinstalling libeigen3-dev. No success so far. The problem is related to these questions:

https://answers.ros.org/question/2531...

https://answers.ros.org/question/2150...

https://answers.ros.org/question/2507...

The given answers somehow did not work for me or do not apply to my system.

Did anyone experience the same issue and found a solution? My last idea would be to download and install Eigen3 manually but I would prefer to stay with the officiall repository...

Thanks!

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-11-30 13:05:47 -0500

gvdhoorn gravatar image
find_package(
  catkin REQUIRED COMPONENTS
  Eigen3
  [..]

Eigen is not a ROS package, so you cannot use find_package(catkin .. ) with it.

You'll need to use a regular find_package(Eigen3 ..).

edit flag offensive delete link more

Comments

Thanks, that solved the problem for me!

jotwe gravatar image jotwe  ( 2018-12-04 01:30:17 -0500 )edit

Question Tools

Stats

Asked: 2018-11-30 03:55:33 -0500

Seen: 10,013 times

Last updated: Nov 30 '18