Officially this is not supported, but for an internal project I tried to install ros_comm
on Leap some months ago. To test whether it would work I did this with Docker. See gavanderhoorn/docker_kinetic_on_opensuse_leap for the Dockerfile
.
Some notes:
- I'm not an OpenSUSE user: I most likely did some terrible things, especially wrt package management.
- Apart from starting
roscore
, I've not tested anything, other than made sure the build completed without any serious warnings or errors. - As I limited myself to
ros_comm
, my dependencies were relatively easy to find. I expect you'll progressively run into more and more dependency issues when you start expanding the set of ROS pkgs you include in your build - No guarantees that this still works
- I did it in a Docker image, but if you consider the
Dockerfile
as a 'recipe', it would probably work on a regular system as well. I have not tested this though, and it will install ROS system wide, which is probably not such a good idea
Finally: to avoid having to build everything from source, you could consider using the official ROS Docker images instead: hub.docker.com/ros (wiki documentation). Doing it that way in general works, but gets trickier when GUI applications are involved. Here in the lab we've had quite some success using Singularity in those cases. Similar to Docker, but less isolation, which especially helps if you are not necessarily only deploying, but also developing with images and containers.
Edit: and to answer your question: if that output is from zypper
, then that makes sense, as afaik none of the ROS tools has been released for OpenSUSE/RPM platforms.
Edit:
I will "Use source-installed rosdep'.
That is what the Dockerfile
does as well, and you'll have to, as rosdep
is not released as a binary package for your OS/platform.
From my developer viewpoint that sounds to be a safest way cloning src and compiling it.
Well, there's one big disadvantage to building things from source: there is no automated update mechanism. You are responsible for tracking upstream and making sure you keep your software up-to-date.
If you do start building things from source on your system, you might want to look into Python virtualenv
.