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

installing ros package without apt-get update?

asked 2017-02-22 23:44:13 -0500

sam26 gravatar image

updated 2017-02-22 23:46:06 -0500

I want to install only a single package from ROS onto my Ubuntu 16.04 ARM. However, I don't want to update the list of packages from any repository. So when I skip the apt-get update step and directly jump to apt install package, I am unable to install the package ( Error: unable to locate ros-kinetic-<package> ). Is there a workaround for this where I can skip updating the package list but only install the ros packages?

edit retag flag offensive close merge delete

1 Answer

Sort by » oldest newest most voted
1

answered 2017-02-23 00:57:15 -0500

gvdhoorn gravatar image

updated 2017-02-23 01:01:07 -0500

Is there a workaround for this where I can skip updating the package list but only install the ros packages?

If you want to use a package manager: no. The package manager needs to know which packages exist, and for that it needs to load something called an index file. And those files are exactly what gets downloaded when you run apt-get update.

Furthermore:

I want to install only a single package from ROS onto my Ubuntu 16.04 ARM.

While this may seem like a simple thing, consider the fact that all ROS packages (and in fact: all software ever created) have runtime dependencies. Even if you say: "but I don't link to any libraries!", you'd still be using the C++ standard runtime library. For ROS nodes specifically, they'll always at least depend on a client library like roscpp or perhaps the Python libraries, but typically they'll depend on many more libraries (OpenCV, PCL, TF, msg packages, actionlib, etc, etc).

So even though you could relatively easily download a single .deb, extract it and then access the one binary that you're interested in, chances are that it'll be impossible to run it, as none of its dependencies are present on your "Ubuntu 16.04 ARM".


So is this completely impossible: no. If you're willing to build from sources and to figure out the exact dependencies of a particular package/node it can be done. It'll just be more work than "install only a single package" using the package manager. Perhaps you can check the bmwcarit/meta-ros project (which actually builds everything from sources for embedded platforms) and see whether they have something that can do what you want.

edit flag offensive delete link more

Comments

Thank you for the response ! The purpose of installing a single package was to just check if the Ubuntu I'm working on runs pre-built binaries of ROS properly without actually installing the entire ROS.

sam26 gravatar image sam26  ( 2017-02-23 01:19:32 -0500 )edit
1

You are right with building from source. If I had similar problem to OP I would definitely consider this solution.

msadowski gravatar image msadowski  ( 2017-02-23 01:20:52 -0500 )edit

And initially, I thought I would check with turtlesim alone, since it has got a simple implementation,but then I realized that it first needs roscore to run which is in roslaunch package.So, I just installed roslaunch & ran roscore & rosgraph and they seem to be running pretty fine without any error

sam26 gravatar image sam26  ( 2017-02-23 01:21:26 -0500 )edit

and coming to the apt-get update, I manually added the content of ros-latest.list to softwares and updates and it prompted a reload and doing so seems to have updated the cache with the list of ROS packages. Is this same as doing apt-get update?

sam26 gravatar image sam26  ( 2017-02-23 01:28:04 -0500 )edit
1

apt-get update is indeed the same as what a "reload" does in the software applet.

gvdhoorn gravatar image gvdhoorn  ( 2017-02-23 01:38:47 -0500 )edit

re: minimal ROS installation: apart from selecting single packages, the ros-$distro-ros-core metapackage results in the smallest 'complete' ROS installation.

gvdhoorn gravatar image gvdhoorn  ( 2017-02-23 01:44:13 -0500 )edit
1

Finally: @sam26: this seems like a text-book example of an xy problem. You ask: how do I install a single pkg / avoid apt-get update. You really want to know:

check if the Ubuntu [..] runs pre-built binaries of ROS properly

It would be good to avoid this in the future.

gvdhoorn gravatar image gvdhoorn  ( 2017-02-23 01:48:59 -0500 )edit

right!! Thank you for that clarification.

sam26 gravatar image sam26  ( 2017-02-23 01:53:28 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2017-02-22 23:44:13 -0500

Seen: 866 times

Last updated: Feb 23 '17