diff --git a/controller_interface/CMakeLists.txt b/controller_interface/CMakeLists.txt
index da47eeb82f..60400f44ab 100644
--- a/controller_interface/CMakeLists.txt
+++ b/controller_interface/CMakeLists.txt
@@ -90,3 +90,4 @@ install(TARGETS controller_interface
ament_export_targets(export_controller_interface HAS_LIBRARY_TARGET)
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
ament_package()
+ament_generate_version_header(controller_interface)
diff --git a/controller_interface/package.xml b/controller_interface/package.xml
index 72988af672..2b65720700 100644
--- a/controller_interface/package.xml
+++ b/controller_interface/package.xml
@@ -9,6 +9,7 @@
Apache License 2.0
ament_cmake
+ ament_cmake_gen_version_h
hardware_interface
rclcpp_lifecycle
diff --git a/controller_manager/CMakeLists.txt b/controller_manager/CMakeLists.txt
index e8f1358147..9cb4e0e4c9 100644
--- a/controller_manager/CMakeLists.txt
+++ b/controller_manager/CMakeLists.txt
@@ -226,3 +226,4 @@ ament_python_install_package(controller_manager
ament_export_targets(export_controller_manager HAS_LIBRARY_TARGET)
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
ament_package()
+ament_generate_version_header(controller_manager)
diff --git a/controller_manager/package.xml b/controller_manager/package.xml
index 4b29ada792..d95d552171 100644
--- a/controller_manager/package.xml
+++ b/controller_manager/package.xml
@@ -9,6 +9,7 @@
Apache License 2.0
ament_cmake
+ ament_cmake_gen_version_h
ament_cmake_python
ament_index_cpp
diff --git a/hardware_interface/CMakeLists.txt b/hardware_interface/CMakeLists.txt
index 94eaa6a050..16470a82a8 100644
--- a/hardware_interface/CMakeLists.txt
+++ b/hardware_interface/CMakeLists.txt
@@ -122,3 +122,4 @@ install(
ament_export_targets(export_hardware_interface HAS_LIBRARY_TARGET)
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
ament_package()
+ament_generate_version_header(hardware_interface)
diff --git a/hardware_interface/package.xml b/hardware_interface/package.xml
index f782faf76a..fb2df4b303 100644
--- a/hardware_interface/package.xml
+++ b/hardware_interface/package.xml
@@ -8,6 +8,7 @@
Apache License 2.0
ament_cmake
+ ament_cmake_gen_version_h
control_msgs
lifecycle_msgs
diff --git a/joint_limits/CMakeLists.txt b/joint_limits/CMakeLists.txt
index f0ad3de6fc..077e33e682 100644
--- a/joint_limits/CMakeLists.txt
+++ b/joint_limits/CMakeLists.txt
@@ -61,3 +61,4 @@ install(TARGETS joint_limits
ament_export_targets(export_joint_limits HAS_LIBRARY_TARGET)
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
ament_package()
+ament_generate_version_header(joint_limits)
diff --git a/joint_limits/package.xml b/joint_limits/package.xml
index 1d1e8e5123..d2e428a1b5 100644
--- a/joint_limits/package.xml
+++ b/joint_limits/package.xml
@@ -13,6 +13,7 @@
https://github.com/ros-controls/ros2_control
ament_cmake
+ ament_cmake_gen_version_h
rclcpp
rclcpp_lifecycle
diff --git a/transmission_interface/CMakeLists.txt b/transmission_interface/CMakeLists.txt
index fc55c483d0..8ddf9fdf06 100644
--- a/transmission_interface/CMakeLists.txt
+++ b/transmission_interface/CMakeLists.txt
@@ -84,3 +84,4 @@ install(TARGETS transmission_interface
ament_export_targets(export_transmission_interface HAS_LIBRARY_TARGET)
ament_export_dependencies(${THIS_PACKAGE_INCLUDE_DEPENDS})
ament_package()
+ament_generate_version_header(transmission_interface)
diff --git a/transmission_interface/package.xml b/transmission_interface/package.xml
index f940e04b53..e081ea1f60 100644
--- a/transmission_interface/package.xml
+++ b/transmission_interface/package.xml
@@ -9,6 +9,7 @@
Apache License 2.0
ament_cmake
+ ament_cmake_gen_version_h
hardware_interface
pluginlib