Ask Your Question
0

Errors installing ROS Kinetic from source on Ubuntu 16.04

asked 2017-11-27 04:32:13 -0500

shardator gravatar image

updated 2017-11-27 06:47:44 -0500

gvdhoorn gravatar image

Hi,

I've been trying hard to install ROS Kinetic from source (so I can change some feature in it) on _clean_, freshly installed Ubuntu 16.04 setup according to the Installing from source manual (steps below) (Note, I was able install ROS Kinetic release on an other clean Ubuntu.)

sudo apt-get install python-rosdep python-rosinstall-generator python-wstool python-rosinstall build-essential
sudo rosdep init
rosdep update
mkdir ~/ros_catkin_ws
cd ~/ros_catkin_ws
rosinstall_generator desktop_full --rosdistro kinetic --deps --wet-only --tar > kinetic-desktop-full-wet.rosinstall
wstool init -j8 src kinetic-desktop-full-wet.rosinstall

At this point I get stuck in an infinite loop of

[opencv3] still active
[opencv3] still active
[opencv3] still active
[opencv3] still active

After killing it, and continuing with the following step:

rosdep install --from-paths src --ignore-src --rosdistro kinetic -y

I get stuck in the unrecoverable error

Reading state information... Done
E: Unable to locate package ros-kinetic-opencv3
ERROR: the following rosdeps failed to install
  apt: command [sudo -H apt-get install -y ros-kinetic-opencv3] failed

I have no idea how to continue from here. Could somebody please help?


Edit: OK, now to get past the error one needs to get rid of the -j8 flag. Some kind of race condition in the package management. It would be great if the documentation would be properly updated.

Note however I get a new error:

  apt: command [sudo -H apt-get install -y shiboken2] failed

This is a mess...

edit retag flag offensive close merge delete

Comments

I've been trying hard to install ROS Kinetic from source (so I can change some feature in it)

Not an answer, but if you just want to "change some feature", you don't need to install everything from source. This depends a bit on what it is exactly that you want to work on (roscpp fi will ..

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 05:18:10 -0500 )edit

.. increase the set of pkgs that you'd need to built from sources significantly), but any package that you add to a Catkin workspace will automatically be found "first", shadowing the system-installed version (ie: from .debs).

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 05:19:39 -0500 )edit

It would be great if the documentation would be properly updated.

What would you like to see added? (anecdotal, but) I use this command almost daily and it's pretty robust, even with higher nrs of concurrent downloads.

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 06:51:20 -0500 )edit
[opencv3] still active

After killing it, [..]

E: Unable to locate package ros-kinetic-opencv3

This makes perfect sense: you don't have the ROS pkgs repositories configured/enabled, cancelled the download of opencv3 (so it's not part of your workspace) and then ask rosdep ..

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 06:57:11 -0500 )edit

.. to install all missing dependencies using binary (ie: released) packages. opencv3 is probably a dependency of some pkgs in desktop-full, so rosdep is going to try to install it.

No pkg repos -> trying to install ros-kinetic-opencv3 -> error.

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 06:58:21 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2017-11-27 07:09:26 -0500

gvdhoorn gravatar image

updated 2017-11-27 08:16:35 -0500

I just installed Kinetic from sources on a clean/fresh/pristine ubuntu:xenial Docker image using the steps you list in your question text.

The missing shiboken2 is essentially ros-infrastructure/rosdep#465.

Reason is that you probably haven't added the ROS package repositories to your system (shiboken2 is an imported pkg, not hosted by the regular Ubuntu repositories). This is not too clear right now I grant you that, but section 1.1 (Installing bootstrap dependencies) of the Prerequisites section of the tutorial you link does say this:

If you have trouble installing the packages in the command above, make sure you have added the packages.ros.org debian repository to your apt source lists as described starting here: kinetic/Installation/Ubuntu#Installation.2BAC8-Ubuntu.2BAC8-Sources.Setup_your_sources.list

If you do that (add the repository and import the key), shiboken2 should be found and rosdep should be able to install all dependencies.


Edit:

This is a mess...

I feel that is a bit of an exaggeration: a source install is essentially almost a copy-paste affair with on the order of 10 commands. For a system as complex as ROS that would seem to be completely manageable and there is a lot of work that is automated to the point where you're basically just sitting there, waiting.

It would be great if the documentation would be properly updated.

Indeed. The wiki is just that, a wiki. If you feel that some things could be improved, please register for an account and improve the installation documentation. That would be great.


Edit2: there was one additional issue that I ran into, which I've reported at ros/ros_comm#1248. This should not be necessary (as the PR already appears to include everything to maintain bw-compatibility), but I had to edit the CMakeLists.txt of xmlrpcpp to work-around the issue reported. See the PR for more info.

edit flag offensive delete link more

Comments

I do not feel that I could properly update the Wiki. I'm new to ROS, and in a deep dive (I'm working on a not-so-hobby project). Sorry if I sound upset.

What bothers me is that the operation of the install scripts is not deterministic, for example I could get over errors by rerunning scripts.

shardator gravatar imageshardator ( 2017-11-27 08:20:48 -0500 )edit

No problem.

I would still recommend you make sure that you absolutely need to build everything from sources, vs just some particular packages. That would probably be a much less involved exercise.

gvdhoorn gravatar imagegvdhoorn ( 2017-11-27 08:24:18 -0500 )edit

I'm very much afraid of trying to build some of the packages if it is so difficult to build all of them. :( Also, I after successfully building all, and building the robot code I have to work on, I get a runtime error, while if I install ROS binaries, I do not... So something is extremely weird here

shardator gravatar imageshardator ( 2017-11-30 10:31:40 -0500 )edit

I'm very much afraid of trying to build some of the packages if it is so difficult to build all of them

this confuses me a bit: building a subset has always been easier for me, as the subset typically needs a lot less dependencies to be present. Mixing binaries with from-source built should ..

gvdhoorn gravatar imagegvdhoorn ( 2017-12-01 03:13:34 -0500 )edit

.. work.

So something is extremely weird here

it would seem that something strange is going on, but without more info I can't help you.

gvdhoorn gravatar imagegvdhoorn ( 2017-12-01 03:15:28 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2017-11-27 04:32:13 -0500

Seen: 650 times

Last updated: Nov 27 '17