ros2-for-unity
ros2-for-unity copied to clipboard
failed to get symbol 'rmw_init_options_init'
Describe the bug
The standalone 1.3 release for humble/ubuntu 22.04 fails to get a symbol when running the Ros2cs.Init() function.
To Reproduce Steps to reproduce the behavior:
- Start with a clean Ubuntu 22.04 install
- Do not install ROS2 (not sure if this is relevant)
- Create a new Unity project with editor version 2022.3.7
- Install
libspdlog-devusing apt-get - Download and unzip https://github.com/RobotecAI/ros2-for-unity/releases/download/1.3.0/Ros2ForUnity_humble_standalone_ubuntu22.zip
- Move the unzipped folder under Assets in the Unity project.
- Add the ROS2UnityComponent script to a game object in the scene.
- Press play
- See error
The full error is:
RuntimeError: failed to get symbol 'rmw_init_options_init' due to Environment variable 'AMENT_PREFIX_PATH' is not set or empty, at ./src/functions.cpp:171, at ./src/rcl/init_options.c:75
Screenshots
Desktop (please complete the following information):
- OS: [Ubuntu22.04]
- ros2 distro [humble]
- ros2-for-unity version [1.3.0]
- ros2 environment setup [single pc]
I tried the same thing on a Ubuntu 22.04 system with ROS2 installed just now, and there was no error.
I installed ROS2 locally on the same computer with the error, and it disappeared.
It would be really nice to have this working on computers without needing ROS2 installed. We pretty much exclusively use ROS2 in docker at my company and don't tend to have a local ROS2 install.
Hi, I believe you were missing libtinyxml2-dev as well.
This should be fixed now (currently on develop ros2cs branch).
Great, thanks!