Robotics StackExchange | Archived questions

CMake Warning due to FindEigen3.cmake

Hi. Im new to ROS and Ubuntu so pardon me if i ask silly questions. I'm running on ROS Indigo and this is what i did:

  1. Add pre-made packages (E.g. cmake_modules) from github using

    $ git clone git://github.com/ros/cmake_modules.git
    
  2. Build the workspace using

    $ catkin_make
    

(did cd ~/catkin_ws/ before that)

The command ran ok at the beginning, until i get a series of similar CMake warnings:

CMake Warning at catkin_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FIndEigen3.cmake Module provided with Eigen. Change instances of find_package(Eigen) to    find_package(Eigen3). Check the FindEigen3.cmake Module for the resulting Cmake variable names.

Followed by an error:

Invoking "make cmake_check_build_system" failed

My issue is i have no idea where to find that FindEigen3.cmake Module provided with Eigen and upon checking my CMakeLists.txt in the cmake_modules folder i don't see any lines saying: find_package(Eigen) or whatsoever.

Did some research over Google and ROS site and found nothing similar to my case.

Any help will be deeply appreciated. Thanks in advance!


Edit: this is what i get:

CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libtf.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libtf2_ros.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libactionlib.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libmessage_filters.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libtf2.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "laser_proc_library" to target "getID" which is
  not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "laser_publisher" to target "getID" which is
  not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "laser_transport" to target "getID" which is
  not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link lI guess my command is this long and these are what i got:ibrary "laser_proc_ROS" to target "getID" which is not
  built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "LaserProcNodelet" to target "getID" which is
  not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libnodeletlib.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libbondcpp.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libuuid.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libtinyxml.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libclass_loader.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/libPocoFoundation.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libdl.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libroslib.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libroscpp.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libboost_signals.so"
  to target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library
  "/usr/lib/x86_64-linux-gnu/libboost_filesystem.so" to target "getID" which
  is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/librosconsole.so" to
  target "getID" which is not built in this directory.
I guess my command is this long and these are what i got:

CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/librosconsole_log4cxx.so"
  to target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library
  "/opt/ros/indigo/lib/librosconsole_backend_interface.so" to target "getID"
  which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/liblog4cxx.so" to target "getID"
  which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libboost_regex.so"
  to target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libxmlrpcpp.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library
  "/opt/ros/indigo/lib/libroscpp_serialization.so" to target "getID" which is
  not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/librostime.so" to target
  "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library
  "/usr/lib/x86_64-linux-gnu/libboost_date_time.so" to target "getID" which
  is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/opt/ros/indigo/lib/libcpp_common.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libboost_system.so"
  to target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libboost_thread.so"
  to target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library "/usr/lib/x86_64-linux-gnu/libpthread.so" to
  target "getID" which is not built in this directory.


CMake Error at urg_node/CMakeLists.txt:44 (target_link_libraries):
  Attempt to add link library
  "/usr/lib/x86_64-linux-gnu/libconsole_bridge.so" to target "getID" which is
  not built in this directory.


-- +++ processing catkin package: 'voxel_grid'
-- ==> add_subdirectory(navigation/voxel_grid)
-- +++ processing catkin package: 'costmap_2d'
-- ==> add_subdirectory(navigation/costmap_2d)
-- Using these message generators: gencpp;genlisp;genpy
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/costmap_2d/CMakeLists.txt:25 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   thread
-- costmap_2d: 1 messages, 0 services
-- +++ processing catkin package: 'nav_core'
-- ==> add_subdirectory(navigation/nav_core)
-- Using these message generators: gencpp;genlisp;genpy
-- +++ processing catkin package: 'base_local_planner'
-- ==> add_subdirectory(navigation/base_local_planner)
-- Using these message generators: gencpp;genlisp;genpy
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   thread
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/base_local_planner/CMakeLists.txt:24 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
-- base_local_planner: 1 messages, 0 services
-- +++ processing catkin package: 'carrot_planner'
-- ==> add_subdirectory(navigation/carrot_planner)
-- Using these message generators: gencpp;genlisp;genpy
-- +++ processing catkin package: 'clear_costmap_recovery'
-- ==> add_subdirectory(navigation/clear_costmap_recovery)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/clear_costmap_recovery/CMakeLists.txt:14 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
-- +++ processing catkin package: 'dwa_local_planner'
-- ==> add_subdirectory(navigation/dwa_local_planner)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/dwa_local_planner/CMakeLists.txt:18 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
-- +++ processing catkin package: 'move_slow_and_clear'
-- ==> add_subdirectory(navigation/move_slow_and_clear)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/move_slow_and_clear/CMakeLists.txt:16 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   thread
-- +++ processing catkin package: 'navfn'
-- ==> add_subdirectory(navigation/navfn)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/navfn/CMakeLists.txt:19 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Boost version: 1.54.0
-- Found the following Boost libraries:
--   system
--   filesystem
--   thread
--   date_time
--   iostreams
--   serialization
--   chrono
** WARNING ** io features related to pcap will be disabled
** WARNING ** io features related to png will be disabled
-- looking for PCL_COMMON
-- looking for PCL_KDTREE
-- looking for PCL_OCTREE
-- looking for PCL_SEARCH
-- looking for PCL_SURFACE
-- looking for PCL_SAMPLE_CONSENSUS
-- looking for PCL_IO
-- looking for PCL_FILTERS
-- looking for PCL_FEATURES
-- looking for PCL_GEOMETRY
-- looking for PCL_KEYPOINTS
-- looking for PCL_REGISTRATION
-- looking for PCL_SEGMENTATION
-- looking for PCL_RECOGNITION
-- looking for PCL_VISUALIZATION
-- looking for PCL_PEOPLE
-- looking for PCL_OUTOFCORE
-- looking for PCL_TRACKING
-- looking for PCL_APPS
-- navfn: 0 messages, 2 services
-- NAVFN_HAVE_FLTK: 1, NETPBM: 
-- FLTK orf NETPBM not found: cannot build navtest
-- +++ processing catkin package: 'global_planner'
-- ==> add_subdirectory(navigation/global_planner)
-- Using these message generators: gencpp;genlisp;genpy
-- +++ processing catkin package: 'rotate_recovery'
-- ==> add_subdirectory(navigation/rotate_recovery)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/rotate_recovery/CMakeLists.txt:15 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- +++ processing catkin package: 'move_base'
-- ==> add_subdirectory(navigation/move_base)
-- Using these message generators: gencpp;genlisp;genpy
CMake Warning at cmake_modules/cmake/Modules/FindEigen.cmake:62 (message):
  The FindEigen.cmake Module in the cmake_modules package is deprecated.

  Please use the FindEigen3.cmake Module provided with Eigen.  Change
  instances of find_package(Eigen) to find_package(Eigen3).  Check the
  FindEigen3.cmake Module for the resulting CMake variable names.

Call Stack (most recent call first):
  navigation/move_base/CMakeLists.txt:15 (find_package)


-- Eigen found (include: /usr/include/eigen3)
-- Configuring incomplete, errors occurred!
See also "/home/ultron/catkin_ws/build/CMakeFiles/CMakeOutput.log".
See also "/home/ultron/catkin_ws/build/CMakeFiles/CMakeError.log".
make: *** [cmake_check_build_system] Error 1
Invoking "make cmake_check_build_system" failed
ultron@ultron334:~/catkin_ws$ 

Ubuntu distribution is Trusty 14.04 LTS

Update Please ignore the FindEigen3.cmake part as i found the solution. Apparently I'm using cmake_modules version 0.4 devel instead of 0.3 devel.

Asked by SQ on 2016-03-27 09:45:36 UTC

Comments

Can you post the full output of your catkin_make command and your CMakeLists.txt ? Do you have any CMake Error [...] message beside the CMake Warning you posted ? And what is your Ubuntu distribution (lsb_release -a)?

Asked by al-dev on 2016-03-27 14:13:10 UTC

@SQ: can you please edit your question next time you have new information / updates (instead of posting an answer)? I've already merged your two posts, but please keep it in mind next time.

Asked by gvdhoorn on 2016-03-28 06:30:58 UTC

Roger that my bad :(

Asked by SQ on 2016-03-28 06:58:23 UTC

Answers

As you can see from the output you posted, several libraries external to the urg_node package fail to be linked to the getID executable declared in the CMakeLists.txt of the urg_node package. If you haven't done any modification to the urg_node package itself, this suggests to me that either :

  1. you did not properly install the packages containing the external libraries mentioned, which you can check using rosdep update, rosdep install urg_node (tutorial here), or
  2. you did not properly source your environment : source /opt/ros/indigo/setup.bash for packages installed via binaries, and source ~/catkin_ws/devel/setup.bash for packages that you compiled yourself in your catkin workspace.

Note that the failure to compile is caused by the CMake Error messages, and not by the CMake Warning on the Eigen library, so you might want to rename your thread or split it into 2 questions, as it is a bit misleading.

Asked by al-dev on 2016-03-28 11:48:38 UTC

Comments

tried the 2 rosdep commands, sourced the environment again and it did not help. However upon removing "hokuyo_node" the workspace builds well. Perhaps i shoudn't use "urg_node" and "hokuyo_node" together. Sorry for the confusion and thank you so much!

Asked by SQ on 2016-03-29 03:04:56 UTC