Skip to content

The property "INCLUDE_DIRECTORIES" is not allowed. #120

@Karsten1987

Description

@Karsten1987

When trying to compile rosbag2 with the latest ros2 master, I run into the following cmake error. I believe it's related to #117

Do we have to change something in the rosbag2 code base?

--- stderr: rosbag2_test_common
CMake Error at /root/ros2_ws/install/share/ament_cmake_cppcheck/cmake/ament_cmake_cppcheck_lint_hook.cmake:36 (get_property):
  INTERFACE_LIBRARY targets may only have whitelisted properties.  The
  property "INCLUDE_DIRECTORIES" is not allowed.
Call Stack (most recent call first):
  /root/ros2_ws/install/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
  /root/ros2_ws/install/share/ament_lint_auto/cmake/ament_lint_auto_package_hook.cmake:15 (ament_execute_extensions)
  /root/ros2_ws/install/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:38 (include)
  /root/ros2_ws/install/share/ament_cmake_core/cmake/core/ament_package.cmake:66 (ament_execute_extensions)
  CMakeLists.txt:43 (ament_package)

The rosbag2 code in question is relatively simple:
https://github.com/ros2/rosbag2/blob/master/rosbag2_test_common/CMakeLists.txt#L20-L41

  target_include_directories(${PROJECT_NAME} INTERFACE
    $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}/include>
    $<INSTALL_INTERFACE:include>)

When resetting ament_cmake_cppcheck to version 0.6.2 it compiles correctly.

Metadata

Metadata

Assignees

Labels

bugSomething isn't working

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions