Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.1.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version humble
Last Updated 2019-08-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Shane Loretz

Authors

  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
jazzy

Package Summary

Tags No category tags.
Version 0.3.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version jazzy
Last Updated 2024-11-28
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Scott K Logan

Authors

  • Brandon Ong
  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.3.0 (2023-04-27)

0.2.2 (2023-02-13)

  • [rolling] Update maintainers - 2022-11-07 (#6)
  • Contributors: Audrow Nash

0.2.1 (2022-09-13)

  • Mirror rolling to master
  • Update maintainers (#4)
  • Contributors: Audrow Nash, methylDragon

0.2.0 (2022-04-29)

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
kilted

Package Summary

Tags No category tags.
Version 0.4.0
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version kilted
Last Updated 2025-07-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Scott K Logan

Authors

  • Brandon Ong
  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.4.0 (2024-04-26)

0.3.0 (2023-04-27)

0.2.2 (2023-02-13)

  • [rolling] Update maintainers - 2022-11-07 (#6)
  • Contributors: Audrow Nash

0.2.1 (2022-09-13)

  • Mirror rolling to master
  • Update maintainers (#4)
  • Contributors: Audrow Nash, methylDragon

0.2.0 (2022-04-29)

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
rolling

Package Summary

Tags No category tags.
Version 0.5.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version rolling
Last Updated 2025-07-29
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Scott K Logan

Authors

  • Brandon Ong
  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.5.1 (2025-07-29)

  • fix cmake deprecation (#10)
  • Contributors: mosfet80

0.5.0 (2025-04-25)

  • Remove CODEOWNERS and mirror-rolling-to-master workflow. (#8)
  • Contributors: Chris Lalancette

0.4.0 (2024-04-26)

0.3.0 (2023-04-27)

0.2.2 (2023-02-13)

  • [rolling] Update maintainers - 2022-11-07 (#6)
  • Contributors: Audrow Nash

0.2.1 (2022-09-13)

  • Mirror rolling to master
  • Update maintainers (#4)
  • Contributors: Audrow Nash, methylDragon

0.2.0 (2022-04-29)

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

No version for distro github showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.1.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version humble
Last Updated 2019-08-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Shane Loretz

Authors

  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
galactic

Package Summary

Tags No category tags.
Version 0.1.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version galactic
Last Updated 2019-08-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Shane Loretz

Authors

  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
iron

Package Summary

Tags No category tags.
Version 0.2.2
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version iron
Last Updated 2023-02-13
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Scott K Logan

Authors

  • Brandon Ong
  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.2.2 (2023-02-13)

  • [rolling] Update maintainers - 2022-11-07 (#6)
  • Contributors: Audrow Nash

0.2.1 (2022-09-13)

  • Mirror rolling to master
  • Update maintainers (#4)
  • Contributors: Audrow Nash, methylDragon

0.2.0 (2022-04-29)

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

No version for distro melodic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.1.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version humble
Last Updated 2019-08-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Shane Loretz

Authors

  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange

No version for distro noetic showing humble. Known supported distros are highlighted in the buttons above.
Package symbol

eigen3_cmake_module package from eigen3_cmake_module repo

eigen3_cmake_module

ROS Distro
humble

Package Summary

Tags No category tags.
Version 0.1.1
License Apache License 2.0
Build type AMENT_CMAKE
Use RECOMMENDED

Repository Summary

Description Adds a custom find module for Eigen3
Checkout URI https://github.com/ros2/eigen3_cmake_module.git
VCS Type git
VCS Version humble
Last Updated 2019-08-08
Dev Status MAINTAINED
Released RELEASED
Tags No category tags.
Contributing Help Wanted (-)
Good First Issues (-)
Pull Requests to Review (-)

Package Description

Exports a custom CMake module to find Eigen3.

Additional Links

No additional links.

Maintainers

  • Shane Loretz

Authors

  • Shane Loretz

eigen3_cmake_module

On Ubuntu Bionic, the Eigen3 CMake package offers exported targets and non-standard CMake variables. This is a problem for packages using ament_cmake.

Targets using ament_target_dependencies(my_target Eigen3) will fail to find Eigen3 headers at compile time. Downstream packages will also fail to find Eigen3 headers at compile time, even if your package uses ament_export_dependencies(Eigen3).

This package adds a CMake find module for Eigen3 that sets standard CMake variables. ROS 2 packages using Eigen3 should use this package to avoid these problems.

Using this package

Edit your CMakeLists.txt

In your CMakeLists.txt, call find_package() on this package using REQUIRED. Afterwards, find Eigen3 with or without REQUIRED as appropriate for your package.

find_package(eigen3_cmake_module REQUIRED)
find_package(Eigen3)

Using with ament_cmake

If your package uses ament_cmake, then use ament_target_dependencies() to give your library or executable targets access to the Eigen3 headers.

# add_library(my_thing ...)
# # OR
# add_executable(my_thing ...)
# ...
ament_target_dependencies(my_thing Eigen3)

If Eigen3 appears in headers installed by your package, then downstream packages will need the Eigen3 headers too. Call ament_export_dependencies() on this package, and afterwards do the same for Eigen3.

ament_export_dependencies(eigen3_cmake_module)
ament_export_dependencies(Eigen3)

Using without ament_cmake

If your package does not use ament_cmake, then use target_include_directories() to give your targets access to the Eigen3 headers.

target_include_directories(my_target PUBLIC "${Eigen3_INCLUDE_DIRS}")

If Eigen3 is used in headers installed by your package, then your <project>-config.cmake must find both this package and Eigen3. Afterwards the Eigen3 headers should be added to your package’s include variable.

find_package(eigen3_cmake_module)
if (NOT eigen3_cmake_module_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

find_package(Eigen3)
if (NOT Eigen3_FOUND)
  set(your_package_name_FOUND 0)
  return()
endif()

list(APPEND your_package_name_INCLUDE_DIRS ${Eigen3_INCLUDE_DIRS})

Edit your package.xml

Add a buildtool dependency to this package, and a build dependency to Eigen3 to your package.xml.

<buildtool_depend>eigen3_cmake_module</buildtool_depend>
<build_depend>eigen</build_depend>

If your package uses Eigen3 in public headers, then also add these tags so downstream packages also depend on this package and Eigen3.

<buildtool_export_depend>eigen3_cmake_module</buildtool_export_depend>
<build_export_depend>eigen</build_export_depend>

<exec_depend> is not necessary because Eigen3 is a header only library.

CHANGELOG

Changelog for package eigen3_cmake_module

0.1.1 (2019-08-08)

  • Handle Eigen3 3.3.4 chocolatey package (#3)
  • Update README (#2)
  • Contributors: Marya Belanger, Shane Loretz

0.1.0 (2019-08-06)

  • Initial release (#1)
  • Contributors: Shane Loretz

Launch files

No launch files found

Messages

No message files found.

Services

No service files found

Plugins

No plugins found.

Recent questions tagged eigen3_cmake_module at Robotics Stack Exchange