ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

Debian install woes

asked 2016-08-27 11:04:40 -0500

dabeegmon gravatar image

[hide preview] Issues start with the first points on the installation file (comments will be listed with the appropriate numbers)

1.1 Configure your Ubuntu repositories Sorry - - I had used a hard-link to a 'Debian' instruction set so I wouldn't be configuring my ubuntu repositories rather my debian ones. 1.2 Setup your computer to accept software from . ROS Kinetic ONLY supports Wily (Ubuntu 15.10), Xenial (Ubuntu 16.04) and Jessie (Debian 8) for debian packages.

sudo sh -c 'echo "deb $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'

commands given (please note that Debian 8 (Jessie) is explicitly mentioned as being supported) don't give any kind of result like what might be wanted. - - vis there is no directory in sources.list.d called ros-latest.list and the command hangs there and doesn't 'do' anything to a somewhat noob the phrase '$(lsb_release -sc) main' doesn't mean much - - - it took me a while to understand that I needed to have 'xenial' here (a space after .../ubuntu) followed by a space and then the word 'main'. 1.3Set up your key

apt-key adv --keyserver hkp:// --recv-key 0xB01FA116


Executing: gpg --ignore-time-conflict --no-options --no-default-keyring --homedir /tmp/tmp.6yfkBfPICO --no-auto-check-trustdb --trust-model always --keyring /etc/apt/trusted.gpg --primary-keyring /etc/apt/trusted.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-security-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-jessie-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-squeeze-stable.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-automatic.gpg --keyring /etc/apt/trusted.gpg.d/debian-archive-wheezy-stable.gpg --keyserver hkp:// --recv-key 0XB01FA116 gpg: "0XB01FA116" not a key ID: skipping

which somehow doesn't seem to be a useful result

did the apt-get update - - just in case something useful might be there and then

next the command aptitude install ros-kinetic-desktop-full was used with the result (aptitude deals with dependencies better therefore its use)

aptitude install ros-kinetic-desktop-full The following NEW packages will be installed: cmake{a} cmake-data{a} comerr-dev{a} fltk1.3-doc{a} fluid{a} fonts-lyx{a} gir1.2-gtk-2.0{a} graphviz{a} hddtemp{a} hdf5-helpers{a} icu-devtools{a} krb5-multidev{a} libapr1-dev{a} libaprutil1-dev{a} libarmadillo4{a} libarpack2{a} libatk1.0-dev{a} libavcodec-dev{a} libavformat-dev{a} libavresample-dev{a} libavutil-dev{a} libboost-all-dev{a} libboost-atomic-dev{a} libboost-atomic1.55-dev{a} libboost-atomic1.55.0{a} libboost-chrono-dev{a} libboost-chrono1.55-dev{a} libboost-chrono1.55.0{a} libboost-context-dev{a} libboost-context1.55-dev{a} libboost-context1.55.0{a} libboost-coroutine-dev{a} libboost-coroutine1.55-dev{a} libboost-date-time-dev{a} libboost-date-time1.55-dev{a} libboost-dev{a} libboost-exception-dev{a} libboost-exception1.55-dev{a} libboost-filesystem-dev{a} libboost-filesystem1.55-dev{a} libboost-filesystem1.55.0{a} libboost-graph-dev{a} libboost-graph-parallel-dev{a} libboost-graph-parallel1.55-dev{a} libboost-graph-parallel1.55.0{a} libboost-graph1.55-dev{a} libboost-graph1.55.0{a} libboost-iostreams-dev{a} libboost-iostreams1.55-dev{a} libboost-locale-dev{a} libboost-locale1.55-dev{a} libboost-locale1.55.0{a} libboost-log-dev{a} libboost-log1.55-dev{a} libboost-log1.55.0{a} libboost-math-dev{a} libboost-math1.55-dev ... (more)

edit retag flag offensive close merge delete


I think we'd all be more than willing to help you, but as it is right now, your question is rather badly formatted, and thus very hard to understand. Could you fix that first? And maybe add a summary at the top, describing very succinctly what exactly doesn't work, and what you expected.

gvdhoorn gravatar image gvdhoorn  ( 2016-08-28 11:32:33 -0500 )edit

Part of the problem is that entering information here the formatting is modified so it makes the reading of what is written very very difficult. But then I was not involved in those choices. Trying to leave a comment to increse the usability and there is no room here to write!

dabeegmon gravatar image dabeegmon  ( 2016-08-28 15:13:37 -0500 )edit

Part of the problem is that entering information here the formatting is modified so it makes the reading of what is written very very difficult

the wiki uses a different markup system than this site, yes. But using the Preformatted code button (like you did in your own answer) would help?

gvdhoorn gravatar image gvdhoorn  ( 2016-08-29 05:43:40 -0500 )edit

Sorry - - didn't realize there was a 'Preformatted code' button. Just pushed and prodded until what the output was was what I was happy with. Just found the button - - never saw one of those before!!

dabeegmon gravatar image dabeegmon  ( 2016-08-29 06:26:10 -0500 )edit

2 Answers

Sort by ยป oldest newest most voted

answered 2016-08-28 13:29:48 -0500

ahendrix gravatar image

It looks like you've interpreted the instructions incorrectly in two places:

In 1.2, you set the release name to xenial; which is the name of the ubuntu release. Ubuntu uses different package version from the Debian releases, and this is likely what is causing your dependency challenges later. The command as listed should work, but if you've mis-typed it in some way it could be waiting for additional input. If lsb_release -sc isn't retrieving your OS name for some reason, use jessie, since that is the proper short name for your Debian release:

sudo sh -c 'echo "deb jessie main" > /etc/apt/sources.list.d/ros-latest.list'

Note that the type and placement of quotes and other punctuation is VERY IMPORTANT. The command-line uses them to figure out which parts are commands, which parts are arguments, and how to interpret your command. If you miss a quote it my assume that you wanted to enter a newline as part of the command, and will happily accept more input until it gets the matching quote.

In 1.3, the error message indicates that you've mis-typed the key ID: it should be 0xB01FA116. Note the lowercase x. Again, it is important to enter the commands EXACTLY as per the instructions.

If you're having trouble, I recommend that you copy and paste the commands into your terminal, instead of trying to re-type them. There's much less opportunity for error that way.

edit flag offensive delete link more

answered 2016-08-28 16:23:51 -0500

dabeegmon gravatar image

updated 2016-08-28 16:28:18 -0500

The earliest answer (see time stamp) says that I've misinterpreted the instructions.

The instructions themselves are very confusing. As I have learnt Debian process is to use root and rarely sudo so the first instruction begins the confusion.

The main error is because I rarely have used key IDs and therefore didn't understand that differentiation but the command doesn't work on my system because it is, again, preficed by sudo - - - which is an ubuntu convention.

Because I cannot get past the first two commands anything further is at this point moot.

Perhaps what the issue here is is that the installation instructions are not really tailored for debian.

So I changed the instructions to reflect what I know of Debian (not much but a little)

1.2 Setup your sources.list

Setup your computer to accept software from . ROS Kinetic ONLY supports Jessie (Debian 8) for debian packages.

#sh -c 'echo "deb jessie main" > /etc/apt/sources.list.d/ros-latest.list'

1.3 Set up your keys

#apt-key adv --keyserver hkp:// --recv-key 0xB01FA116

1.4 Setup your repository access It is necessary to modify your sources in apt so that you can download the files necessary for an installation. The following 3 lines need to be added to /etc/apt/sources.list.

  # sources for robotics
  deb jessie main
  deb-src jessie main 

  (I took the liberty of modifying the instructions to increase clarity therefore the commented out line.)

next the original instruction 1.4 can be used but without the sudo.

When these are followed by 1.5-1.7 (again each without the sudo).

So now I have an installed system.

Can I get access to the instruction set so that I could modify the existing instructions for any subsequent debian user?

Thanking you for your assistance!!

edit flag offensive delete link more



Debian (and linux admin in general) recommend the use of sudo instead of using the root account directly: See: and ; but debian does not install sudo by default if you set a root password.

ahendrix gravatar image ahendrix  ( 2016-08-28 16:44:28 -0500 )edit

I think the better change to the debian install instructions is to recommend that users install and setup sudo before installing ROS.

ahendrix gravatar image ahendrix  ( 2016-08-28 16:45:06 -0500 )edit

Spent some time researching - - there is no general recommendation to use sudo instead of root for debian. In fact the whole idea starts to sound like a religious war - - - not something I wanted to start nor be a part of. As I read it its part of the philosophical differences between the two.

dabeegmon gravatar image dabeegmon  ( 2016-08-28 22:07:00 -0500 )edit

Instead of insisting that the user change ALL system usage (not everyone is running this on a dedicated system) why not have 2 sets of instructions. One using the sudo-ers file and the information on how to do that and the other using root. Am noticing that this is an issue throughout.

dabeegmon gravatar image dabeegmon  ( 2016-08-28 22:09:41 -0500 )edit

In the initial tutorials there is a very regular switching between the two levels. Could you point out the advantages in ros to not having a root account?

dabeegmon gravatar image dabeegmon  ( 2016-08-28 22:11:27 -0500 )edit

Question Tools



Asked: 2016-08-27 11:02:41 -0500

Seen: 603 times

Last updated: Aug 28 '16