ros / geometry2

A set of ROS packages for keeping track of coordinate transforms.
191 stars 279 forks source link

Including tf2_geometry_msgs in a catkin package includes two versions of Eigen #525

Closed nickcharron closed 2 years ago

nickcharron commented 2 years ago

I am building a ROS package that need tf2_geometry_msgs. When I call:

find_package( catkin REQUIRED COMPONENTS ${catkin_build_depends} # some package specific depends tf2_geometry_msgs )

And echo the catkin include directories using

message( ${catkin_INCLUDE_DIRS} )

I get the following eigen paths:

/usr/local/include/eigen3 /usr/include/eigen3

If I remove tf2_geometry_msgs, then I only get /usr/local/include/eigen3

This is causing me major problems because different packages are using different versions of Eigen. /usr/include/eigen3 has 3.3.4 and /usr/local/include/eigen3 has 3.3.7.

Thanks for the help!

tfoote commented 2 years ago

There's nothing in tf2_geometry_msgs that knows about /usr/local or any other prefix. I expect that at one point you built a workspace which referenced /usr/local and you still have cached cmake data which was then propogated into your workspace or install space. If you're still having trouble please ask for help on answers.ros.org