Difference between revisions of "Ros"

From ArchWiki
Jump to: navigation, search
m (-)
m (Setup Notes)
(19 intermediate revisions by 7 users not shown)
Line 1: Line 1:
{{Out of date}}
+
[[Category:Mathematics and science]]
 +
[http://www.ros.org ROS] is an open-source, meta-operating system for your robot. It provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management.
  
{{Note|Python3 and gcc46 is not supported in ros yet, might be best to wait for a update.}}
+
With the ROS Fuerte release, it is much easier to get ROS running on an Arch system but still takes some effort. Read the notes below and then go to [http://www.ros.org/wiki/fuerte/Installation/Arch the installation page on the ROS website]
  
Originally from the [http://www.ros.org/wiki/diamondback/Installation/Arch ROS wiki].
+
== Setup Notes ==
[http://www.ros.org ROS] is an open-source, meta-operating system for your robot. It provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management.
+
 
 +
With Fuerte, ROS is split into two levels. The core libraries are installed into the system folders ({{ic|/opt/ros/fuerte}}) while the higher-level stacks and packages are installed in the user folders.
 +
 
 +
The Arch-specific install page lists the packages (official and AUR) that you will need to install for a full setup.
 +
 
 +
{{AUR|ros-core}}, available in the [[AUR]], is the package for the core libraries.
  
== Setup ==
+
To build the higher level packages you will need to do some work:
Get dependencies, and create alternate python dir to workaround shebang line in scripts that point to python3. Thanks to [http://evorobo.blogspot.com/2011/07/robotics-operating-system.html DavidS]. Symlink libboost_filesystem.so to libboost_filesystem-mt.so, not an ideal solution, but it works. Then install rosinstall, and ros.
+
pacman -S python2 cmake wget python-yaml svn python2-distribute boost python-yaml pil python-numpy
+
yaourt -S log4cxx
+
mkdir /usr/local/bin/alt 
+
ln -s /usr/bin/python2 /usr/local/bin/alt/python
+
export PATH=/usr/local/bin/alt:$PATH
+
ln -s /usr/lib/libboost_filesystem.so /usr/lib/libboost_filesystem-mt.so
+
sudo easy_install-2.7 -U rosinstall
+
rosinstall ~/ros "http://packages.ros.org/cgi-bin/gen_rosinstall.py?rosdistro=diamondback&variant=desktop-full&overlay=no"
+
  
Follow the [http://www.ros.org/wiki/diamondback/Installation/Arch ROS wiki] afterwards.
+
# Install [[AUR]] packages: {{AUR|ros-on-arch}} {{AUR|pcl-ros}} {{AUR|swig-wx}} {{AUR|qhull-ros}}
== Issues ==
+
# Pull the sources with {{ic|rosinstall}}
If package fails to build. You can apply this [http://code.google.com/p/bullet/issues/attachmentText?id=481&aid=-7554332888653313858&name=zero_initialize.patch&token=a338762d74f222c8a20c9170102cf429 patch].
+
# Patch the sources to compile with GCC 4.7 [https://code.ros.org/trac/ros-pkg/attachment/ticket/5417/ros.patch]
 +
# Resolve dependencies with {{ic|rosdep}}
 +
# Build with {{ic|rosmake}}

Revision as of 05:05, 12 October 2012

ROS is an open-source, meta-operating system for your robot. It provides the services you would expect from an operating system, including hardware abstraction, low-level device control, implementation of commonly-used functionality, message-passing between processes, and package management.

With the ROS Fuerte release, it is much easier to get ROS running on an Arch system but still takes some effort. Read the notes below and then go to the installation page on the ROS website

Setup Notes

With Fuerte, ROS is split into two levels. The core libraries are installed into the system folders (/opt/ros/fuerte) while the higher-level stacks and packages are installed in the user folders.

The Arch-specific install page lists the packages (official and AUR) that you will need to install for a full setup.

ros-coreAUR, available in the AUR, is the package for the core libraries.

To build the higher level packages you will need to do some work:

  1. Install AUR packages: ros-on-archAUR pcl-rosAUR swig-wxAUR qhull-rosAUR
  2. Pull the sources with rosinstall
  3. Patch the sources to compile with GCC 4.7 [1]
  4. Resolve dependencies with rosdep
  5. Build with rosmake