tier4 / caret

CARET (Chain-Aware ROS Evaluation Tool) is one of performance analysis tools dedicated with ROS 2 applications
https://tier4.github.io/caret_doc/main/
Apache License 2.0
64 stars 16 forks source link

How to complie autoware.universe with CARET? #169

Closed ruoxianglee closed 11 months ago

ruoxianglee commented 11 months ago

Checklist

Step where the question is related to

Build

Description

I am building Autoware.Universe project with CARET tool to trace some information for this app as in the paper of CARET. I have succefully executed the caret_demos packages in tutorial. And I follow the tutorial and the source installation of Autoware.Universe in the document. The following are the instructions to build Autoware:

source /opt/ros/humble/setup.bash
source ~/ros2_caret_ws/install/local_setup.bash
rosdep update
rosdep install -y --from-paths src --ignore-src --rosdistro $ROS_DISTRO
colcon build --symlink-install --cmake-args -DBUILD_TESTING=OFF -DCMAKE_BUILD_TYPE=Release

But, it always failed. Some warnings for several packages as follows:

Cannot generate a safe runtime search path for target xxx because there is a cycle in the constraint graph.

And it finally aborted the building at ekf_localizer package with the following error:

/usr/bin/ld: libekf_localizer_lib.so: undefined reference to `ros_trace_message_construct'
/usr/bin/ld: libekf_localizer_lib.so: undefined reference to `ros_trace_dispatch_intra_process_subscription_callback'
/usr/bin/ld: libekf_localizer_lib.so: undefined reference to `ros_trace_rclcpp_intra_publish'
/usr/bin/ld: libekf_localizer_lib.so: undefined reference to `ros_trace_dispatch_subscription_callback'

I think it may be not an issue but some operation faults by myself when building it. So I opened this quetion to require some help.

Thanks in advance.

xygyo77 commented 11 months ago

These are known issues and you need to apply the following patch to your ros2_humble system.
https://tier4.github.io/caret_doc/main/faq/known_issues/#build

Can you please try it?

ruoxianglee commented 11 months ago

Thanks for your response.

I tried. The question mentioned above was solved.

However, I just encountered another issue. The build log is shown as follows:


In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:337:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  337 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:313:3: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
  313 |   PCL_ADD_UNION_RGB \
      |   ^~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:368:5: note: in expansion of macro ‘PCL_ADD_RGB’
  368 |     PCL_ADD_RGB;
      |     ^~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:318:5: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  318 |     { \
      |     ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:411:5: note: in expansion of macro ‘PCL_ADD_INTENSITY’
  411 |     PCL_ADD_INTENSITY;
      |     ^~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:411:22: error: extra ‘;’ [-Werror=pedantic]
  411 |     PCL_ADD_INTENSITY;
      |                      ^
      |                      -
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:324:5: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  324 |     { \
      |     ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:437:5: note: in expansion of macro ‘PCL_ADD_INTENSITY_8U’
  437 |     PCL_ADD_INTENSITY_8U;
      |     ^~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:437:25: error: extra ‘;’ [-Werror=pedantic]
  437 |     PCL_ADD_INTENSITY_8U;
      |                         ^
      |                         -
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:330:5: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  330 |     { \
      |     ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:469:5: note: in expansion of macro ‘PCL_ADD_INTENSITY_32U’
  469 |     PCL_ADD_INTENSITY_32U;
      |     ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:469:26: error: extra ‘;’ [-Werror=pedantic]
  469 |     PCL_ADD_INTENSITY_32U;
      |                          ^
      |                          -
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:497:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  497 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:501:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  501 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:533:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  533 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:573:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  573 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:313:3: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
  313 |   PCL_ADD_UNION_RGB \
      |   ^~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:574:5: note: in expansion of macro ‘PCL_ADD_RGB’
  574 |     PCL_ADD_RGB;
      |     ^~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:629:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  629 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:313:3: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
  313 |   PCL_ADD_UNION_RGB \
      |   ^~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:630:5: note: in expansion of macro ‘PCL_ADD_RGB’
  630 |     PCL_ADD_RGB;
      |     ^~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:636:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  636 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:313:3: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
  313 |   PCL_ADD_UNION_RGB \
      |   ^~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:637:5: note: in expansion of macro ‘PCL_ADD_RGB’
  637 |     PCL_ADD_RGB;
      |     ^~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:741:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  741 |     PCL_ADD_POINT4D; // this adds the members x,y,z
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:745:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  745 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:782:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  782 |     PCL_ADD_POINT4D;    // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:786:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  786 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:867:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  867 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:871:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  871 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:883:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
  883 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:887:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  887 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:924:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
  924 |     PCL_ADD_NORMAL4D;
      |     ^~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:955:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
  955 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:956:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
  956 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:960:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  960 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1001:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1001 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1002:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
 1002 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1007:9: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
 1007 |         PCL_ADD_UNION_RGB;
      |         ^~~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1007:26: error: extra ‘;’ [-Werror=pedantic]
 1007 |         PCL_ADD_UNION_RGB;
      |                          ^
      |                          -
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1006:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1006 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1085:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1085 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1086:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
 1086 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1090:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1090 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1135:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1135 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1136:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
 1136 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1140:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1140 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1187:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1187 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1191:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1191 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1226:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1226 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1230:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1230 |       {
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1326:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1326 |       {
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1519:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1519 |       {
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1738:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1738 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1765:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1765 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1818:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1818 |     PCL_ADD_POINT4D; // This adds the members x,y,z which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:266:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  266 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:280:3: note: in expansion of macro ‘PCL_ADD_UNION_NORMAL4D’
  280 |   PCL_ADD_UNION_NORMAL4D \
      |   ^~~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1819:5: note: in expansion of macro ‘PCL_ADD_NORMAL4D’
 1819 |     PCL_ADD_NORMAL4D; // This adds the member normal[3] which can also be accessed using the point (which is float[4])
      |     ^~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:289:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  289 |       { \
      |       ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1824:9: note: in expansion of macro ‘PCL_ADD_UNION_RGB’
 1824 |         PCL_ADD_UNION_RGB;
      |         ^~~~~~~~~~~~~~~~~
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1824:26: error: extra ‘;’ [-Werror=pedantic]
 1824 |         PCL_ADD_UNION_RGB;
      |                          ^
      |                          -
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1823:7: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
 1823 |       {
      |       ^
In file included from /usr/include/pcl-1.12/pcl/point_types.h:354,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/planner_data.hpp:41,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/include/behavior_velocity_planner_common/scene_module_interface.hpp:18,
                 from /home/cpsiot/autoware/src/universe/autoware.universe/planning/behavior_velocity_planner_common/src/scene_module_interface.cpp:15:
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:241:12: error: ISO C++ prohibits anonymous structs [-Werror=pedantic]
  241 |     struct { \
      |            ^
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:259:3: note: in expansion of macro ‘PCL_ADD_UNION_POINT4D’
  259 |   PCL_ADD_UNION_POINT4D \
      |   ^~~~~~~~~~~~~~~~~~~~~
/usr/include/pcl-1.12/pcl/impl/point_types.hpp:1867:5: note: in expansion of macro ‘PCL_ADD_POINT4D’
 1867 |     PCL_ADD_POINT4D;
      |     ^~~~~~~~~~~~~~~
cc1plus: all warnings being treated as errors
gmake[2]: *** [CMakeFiles/behavior_velocity_planner_common.dir/build.make:76: CMakeFiles/behavior_velocity_planner_common.dir/src/scene_module_interface.cpp.o] Error 1
gmake[1]: *** [CMakeFiles/Makefile2:137: CMakeFiles/behavior_velocity_planner_common.dir/all] Error 2
gmake: *** [Makefile:146: all] Error 2
---
Failed   <<< behavior_velocity_planner_common [1min 35s, exited with code 2]

I am still working on this issue but have not fixed it yet.

Thank you so much.

ruoxianglee commented 11 months ago

The above issue (i.e., the errors when building behavior_velocity_planner_common) can be fixed by following: Autoware issue 1219.

Thanks.