rerun-io / cpp-example-ros2-bridge

An example implementation of a ROS 2 to Rerun bridge
Apache License 2.0
50 stars 4 forks source link

pixi run go2_example fails during build #10

Closed blooop closed 2 weeks ago

blooop commented 2 weeks ago

Running the go2 example via pixy crashes during build:

I cloned the repo and ran the pixi command. This is the output.

user@hostname:~/projects$ git clone --recurse-submodules  https://github.com/rerun-io/cpp-example-ros2-bridge.git
Cloning into 'cpp-example-ros2-bridge'...
remote: Enumerating objects: 120, done.
remote: Counting objects: 100% (67/67), done.
remote: Compressing objects: 100% (44/44), done.
remote: Total 120 (delta 41), reused 28 (delta 21), pack-reused 53
Receiving objects: 100% (120/120), 477.72 KiB | 6.46 MiB/s, done.
Resolving deltas: 100% (50/50), done.
user@hostname:~/projects$ cd cpp-example-ros2-bridge/
user@hostname:~/projects/cpp-example-ros2-bridge$ pixi run go2_example
✨ Pixi task (ws in default): mkdir -p humble_ws/src && ln -sfn $(pwd)/rerun_bridge humble_ws/src/rerun_bridge

✨ Pixi task (build in default): colcon build --packages-select rerun_bridge --cmake-args -DCMAKE_BUILD_TYPE=Release -DCMAKE_EXPORT_COMPILE_COMMANDS=ON
Starting >>> rerun_bridge
[Processing: rerun_bridge]
[Processing: rerun_bridge]
[Processing: rerun_bridge]
[Processing: rerun_bridge]
[Processing: rerun_bridge]
[Processing: rerun_bridge]
--- stderr: rerun_bridge
Compiler: GNU 12.3.0 (/home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/bin/x86_64-conda-linux-gnu-c++)
Cloning into 'arrow_cpp'...
HEAD is now at a6eabc2b8 MINOR: [Release] Update versions for 10.0.1
Submodule 'cpp/submodules/parquet-testing' (https://github.com/apache/parquet-testing.git) registered for path 'cpp/submodules/parquet-testing'
Submodule 'testing' (https://github.com/apache/arrow-testing) registered for path 'testing'
Cloning into '/home/user/projects/cpp-example-ros2-bridge/humble_ws/build/rerun_bridge/arrow/src/arrow_cpp/cpp/submodules/parquet-testing'...
Cloning into '/home/user/projects/cpp-example-ros2-bridge/humble_ws/build/rerun_bridge/arrow/src/arrow_cpp/testing'...
/home/user/projects/cpp-example-ros2-bridge/humble_ws/src/rerun_bridge/src/rerun_bridge/visualizer_node.cpp: In member function 'void RerunLoggerNode::_read_yaml_config(std::string)':
/home/user/projects/cpp-example-ros2-bridge/humble_ws/src/rerun_bridge/src/rerun_bridge/visualizer_node.cpp:206:30: warning: 'void rerun::RecordingStream::log_timeless(std::string_view, const Ts& ...) const [with Ts = {rerun::archetypes::Pinhole}; std::string_view = std::basic_string_view<char>]' is deprecated: Use `log_static` instead [-Wdeprecated-declarations]
  206 |             _rec.log_timeless(
      |             ~~~~~~~~~~~~~~~~~^
  207 |                 extra_pinhole["entity_path"].as<std::string>(),
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  208 |                 rerun::Pinhole(image_from_camera)
      |                 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  209 |                     .with_resolution(
      |                     ~~~~~~~~~~~~~~~~~
  210 |                         extra_pinhole["width"].as<int>(),
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  211 |                         extra_pinhole["height"].as<int>()
      |                         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  212 |                     )
      |                     ~         
  213 |             );
      |             ~                 
In file included from /home/user/projects/cpp-example-ros2-bridge/humble_ws/build/rerun_bridge/_deps/rerun_sdk-src/src/rerun.hpp:15,
                 from /home/user/projects/cpp-example-ros2-bridge/humble_ws/src/rerun_bridge/src/rerun_bridge/visualizer_node.hpp:19,
                 from /home/user/projects/cpp-example-ros2-bridge/humble_ws/src/rerun_bridge/src/rerun_bridge/visualizer_node.cpp:1:
/home/user/projects/cpp-example-ros2-bridge/humble_ws/build/rerun_bridge/_deps/rerun_sdk-src/src/rerun/recording_stream.hpp:346:57: note: declared here
  346 |         [[deprecated("Use `log_static` instead")]] void log_timeless(
      |                                                         ^~~~~~~~~~~~
---
Finished <<< rerun_bridge [3min 27s]

Summary: 1 package finished [3min 28s]
  1 package had stderr output: rerun_bridge

✨ Pixi task (go2_example_data in default): curl -L -C - -O https://storage.googleapis.com/rerun-example-datasets/go2_ros2.zip && unzip go2_ros2.zip
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  373M  100  373M    0     0  56.0M      0  0:00:06  0:00:06 --:--:-- 69.6M
Archive:  go2_ros2.zip
   creating: go2_ros2/
  inflating: go2_ros2/go2_ros2.mcap  
  inflating: go2_ros2/metadata.yaml  

✨ Pixi task (go2_ros2_sdk in default): (test -d src/go2_ros2_sdk || git clone --recurse-submodules https://github.com/abizovnuralem/go2_ros2_sdk.git src/go2_ros2_sdk)
&& colcon build --packages-select go2_interfaces go2_robot_sdk --cmake-args -DCMAKE_BUILD_TYPE=Release

Cloning into 'src/go2_ros2_sdk'...
remote: Enumerating objects: 1314, done.
remote: Counting objects: 100% (102/102), done.
remote: Compressing objects: 100% (43/43), done.
remote: Total 1314 (delta 63), reused 63 (delta 59), pack-reused 1212
Receiving objects: 100% (1314/1314), 150.05 MiB | 23.08 MiB/s, done.
Resolving deltas: 100% (560/560), done.
Submodule 'go2_video' (https://github.com/tfoldi/ros2_go2_video) registered for path 'go2_video'
Cloning into '/home/user/projects/cpp-example-ros2-bridge/humble_ws/src/go2_ros2_sdk/go2_video'...
remote: Enumerating objects: 79, done.        
remote: Counting objects: 100% (79/79), done.        
remote: Compressing objects: 100% (44/44), done.        
remote: Total 79 (delta 35), reused 54 (delta 20), pack-reused 0        
Submodule path 'go2_video': checked out '794d70b97b447f951b8c3cde8a5a76996c98a39e'
Submodule 'go2webrtc-rs' (https://github.com/tfoldi/go2webrtc-rs/) registered for path 'go2_video/go2webrtc-rs'
Cloning into '/home/user/projects/cpp-example-ros2-bridge/humble_ws/src/go2_ros2_sdk/go2_video/go2webrtc-rs'...
remote: Enumerating objects: 70, done.        
remote: Counting objects: 100% (70/70), done.        
remote: Compressing objects: 100% (42/42), done.        
remote: Total 70 (delta 34), reused 58 (delta 22), pack-reused 0        
Submodule path 'go2_video/go2webrtc-rs': checked out '5a5235370264a5f67aa32e71ded3908a3668e93a'
Starting >>> go2_interfaces
--- stderr: go2_interfaces
CMake Warning (dev) at /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:20 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
  CMakeLists.txt:16 (rosidl_generate_interfaces)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/python_cmake_module/cmake/Modules/FindPythonExtra.cmake:52 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:23 (find_package)
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
  CMakeLists.txt:16 (rosidl_generate_interfaces)
This warning is for project developers.  Use -Wno-dev to suppress it.

CMake Warning (dev) at /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/python_cmake_module/cmake/Modules/FindPythonExtra.cmake:140 (find_package):
  Policy CMP0148 is not set: The FindPythonInterp and FindPythonLibs modules
  are removed.  Run "cmake --help-policy CMP0148" for policy details.  Use
  the cmake_policy command to set the policy and suppress this warning.

Call Stack (most recent call first):
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_generator_py/cmake/rosidl_generator_py_generate_interfaces.cmake:23 (find_package)
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/ament_cmake_core/cmake/core/ament_execute_extensions.cmake:48 (include)
  /home/user/projects/cpp-example-ros2-bridge/.pixi/envs/default/share/rosidl_cmake/cmake/rosidl_generate_interfaces.cmake:286 (ament_execute_extensions)
  CMakeLists.txt:16 (rosidl_generate_interfaces)
This warning is for project developers.  Use -Wno-dev to suppress it.

---
Finished <<< go2_interfaces [8.50s]
Starting >>> go2_robot_sdk
Finished <<< go2_robot_sdk [1.89s]

Summary: 2 packages finished [10.5s]
  1 package had stderr output: go2_interfaces

✨ Pixi task (rosbag2_storage_mcap in default): (test -d src/rosbag2_storage_mcap || git clone https://github.com/ros-tooling/rosbag2_storage_mcap.git src/rosbag2_storage_mcap)
&& colcon build --packages-select rosbag2_storage_mcap --cmake-args -DCMAKE_BUILD_TYPE=Release

Cloning into 'src/rosbag2_storage_mcap'...
remote: Enumerating objects: 710, done.
remote: Counting objects: 100% (477/477), done.
remote: Compressing objects: 100% (210/210), done.
remote: Total 710 (delta 328), reused 339 (delta 253), pack-reused 233
Receiving objects: 100% (710/710), 155.29 KiB | 5.01 MiB/s, done.
Resolving deltas: 100% (421/421), done.
Starting >>> rosbag2_storage_mcap
[0.301s] colcon.colcon_cmake.task.cmake.build ERROR Failed to find the following files:
- /home/user/projects/cpp-example-ros2-bridge/humble_ws/install/mcap_vendor/share/mcap_vendor/package.sh
- /home/user/projects/cpp-example-ros2-bridge/humble_ws/install/rosbag2_storage_mcap_testdata/share/rosbag2_storage_mcap_testdata/package.sh
Check that the following packages have been built:
- mcap_vendor
- rosbag2_storage_mcap_testdata
Failed   <<< rosbag2_storage_mcap [0.02s, exited with code 1]

Summary: 0 packages finished [0.17s]
  1 package failed: rosbag2_storage_mcap
user@hostname:~/projects/cpp-example-ros2-bridge$ pixi run go2_example
roym899 commented 2 weeks ago

Thanks for reporting this. I just merged #11 which hopefully fixes this. Let me know if you still have issues running the example.

blooop commented 2 weeks ago

that has fixed it, thanks!