Installing ROS2-Dashing from source fails (Ubuntu 19.10 eoan)
I'm interested in working with rclcpp, so I've decided to install ROS2 (Dashing) by building it from source, on a system with a fresh upgrade to Ubuntu 19.10 eoan. I am using this guide from ros.org to do so. However, I simply cannot manage to successfully build ROS2. The following problems I have encountered are:
Install development tools and ROS tools: I was unable to succesfully run
sudo apt install python3-colcon-common-extensions
. It returned withE: Unable to locate package python3-colcon-common-extensions
.Workaround: I obtained colcon using
pip3 install -U colcon-common-extensions
. I then added it to myPATH
environment variableInstall dependencies using rosdep: Running
rosdep install --from-paths src --ignore-src --rosdistro dashing -y --skip-keys "console_bridge fastcdr fastrtps libopensplice67 libopensplice69 rti-connext-dds-5.3.1 urdfdom_headers"
yielded the following output:ERROR: the following packages/stacks could not have their rosdep keys resolved to system dependencies: rosidl_parser: No definition of [python3-lark-parser] for OS version [eoan]
I was able to install
python3-lark-parser
throughpip3
however, and hoped that sorted out the problem.Building: Running
colcon build --symlink-install
yields:- Summary: 169 packages finished [13min 11s]
- 1 package failed:
rviz_rendering
- 5 packages aborted:
diagnostic_msgs
rclcpp
sensor_msgs
shape_msgs
visualization_msgs
- 23 packages had stderr output:
actionlib_msgs
composition_interfaces
diagnostic_msgs
fastrtps
geometry_msgs
lifecycle_msgs
nav_msgs
qt_gui_cpp
rcl_interfaces
rmw_connext_cpp
rmw_connext_shared_cpp
rmw_fastrtps_shared_cpp
rmw_opensplice_cpp
rosidl_generator_py
rosidl_typesupport_connext_c
rosidl_typesupport_connext_cpp
rviz_rendering
sensor_msgs
std_msgs
std_srvs
test_msgs
tf2_msgs
visualization_msgs
- 96 packages not processed
After this I was unable to do anything to try and repair my installation. I unfortunately feel a bit overwhelmed by the amount of dependencies and what I perceive to be the complexity of the ROS2 build process.
Are there any measures I can take to repair my installation and get ROS2 working?
can you clarify why you're using an older version, instead of Eloquent?
Additionally:
19.04
is not an officially supported version of Ubuntu at this time for ROS 2, so running into some dependency issues seems like it would be expected.I simply defaulted to Dashing as it was the distribution I've used in the past, but only via a docker image. I realize it is now illogical of me to have paired an older version of ROS with a newer unsupported version of Ubuntu. I can attempt to reinstall an older version of Ubuntu and repeat the procedure with a new version of ROS, but I'd rather avoid that if possible.
I was hopeful there might be some errors here other users recognize and have solutions for :s
I would still recommend trying Eloquent, as I expect this to be the first thing you'll get as a question from the maintainers.
You show two things:
pip
work-around)rviz_rendering
could not be build successfully. Without seeing the actual error(s), there isn't much to say about that, except that I can again see how that could fail, asrviz
uses Ogre, which has a tendency to break things between Ubuntu releasesThe RViz build failure then basically stops the entire build.
The other "23 packages with stderr output" should also get some attention, but focusing on one package first would ...(more)