User Tools

Site Tools


software:ros:installation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
software:ros:installation [2013/04/16 14:01] – [Install IAI software components] tenorthsoftware:ros:installation [2016/05/19 09:19] (current) – external edit 127.0.0.1
Line 25: Line 25:
 ===== Install IAI software components ===== ===== Install IAI software components =====
  
-- KnowRob-Dependencies installiert man am leichtesten über+It is recommended to install the ROS stacks for which .deb packages exist first, also because this is the easiest way to get all system dependencies installed:
  
-sudo apt-get install ros-fuerte-knowrob +  sudo aptitude install ros-fuerte-knowrob ros-fuerte-ias-common
  
 +Copy the following [[http://www.ros.org/doc/independent/api/rosinstall/html/|rosinstall rules]] into a text file in your ROS workspace, e.g. yourname.rosinstall.
 +<code>
   - git: {local-name: stacks/cram_core, uri: 'git://github.com/cram-code/cram_core.git'}   - git: {local-name: stacks/cram_core, uri: 'git://github.com/cram-code/cram_core.git'}
   - git: {local-name: stacks/cram_highlevel, uri: 'git://github.com/cram-code/cram_highlevel.git'}   - git: {local-name: stacks/cram_highlevel, uri: 'git://github.com/cram-code/cram_highlevel.git'}
   - git: {local-name: stacks/cram_pr2, uri: 'git://github.com/cram-code/cram_pr2.git'}   - git: {local-name: stacks/cram_pr2, uri: 'git://github.com/cram-code/cram_pr2.git'}
   - git: {local-name: stacks/cram_physics, uri: 'git://github.com/cram-code/cram_physics.git'}   - git: {local-name: stacks/cram_physics, uri: 'git://github.com/cram-code/cram_physics.git'}
 +  - git: {local-name: stacks/knowrob, uri: 'git://github.com/knowrob/knowrob.git'}
   - git: {local-name: stacks/knowrob_addons, uri: 'git@github.com:knowrob/knowrob_addons.git'}   - git: {local-name: stacks/knowrob_addons, uri: 'git@github.com:knowrob/knowrob_addons.git'}
   - git: {local-name: stacks/knowrob_gui, uri: 'git@github.com:knowrob/knowrob_gui.git'}   - git: {local-name: stacks/knowrob_gui, uri: 'git@github.com:knowrob/knowrob_gui.git'}
   - git: {local-name: stacks/knowrob_human, uri: 'git@github.com:knowrob/knowrob_human.git'}   - git: {local-name: stacks/knowrob_human, uri: 'git@github.com:knowrob/knowrob_human.git'}
   - git: {local-name: stacks/knowrob_tutorials, uri: 'git@github.com:knowrob/knowrob_tutorials.git'}   - git: {local-name: stacks/knowrob_tutorials, uri: 'git@github.com:knowrob/knowrob_tutorials.git'}
 +</code>
 +
 +You can then install the respective ROS stacks into your workspace using
 +  rosws merge yourname.rosinstall
 +  rosws update
 +
 +Note: As an alternative to creating and merging a rosinstall file into your workspace you can also manually add each one at a time using the command 'rosws set ...'. Usage of this command is shown in the next section.
 +
 +To compile the software, please refer to the next section for information about how to install the required ROS and system dependencies.
 +
 +===== General workflow for compiling ROS stacks =====
 +
 +ROS provides a clear way of specifying and resolving dependencies. If you download a new ROS stack "your_stack" you can compile it using the following procedure:
 +
 +Add the stack to your ROS workspace (choose the respective version control system):
 +
 +  EITHER:
 +  rosws set stacks/your_stack --git git://github.com/code_iai/your_stack.git
 +  OR:
 +  rosws set stacks/your_stack --svn http://svn.code.sf.net/p/tum-ros-pkg/code/your_stack
 +
 +Check out the sources
 +
 +  rosws update
 +
 +Resolve system dependencies
 +
 +  rosdep update
 +  rosdep install your_stack
 +
 +
 +Check if all ROS package dependencies are available (should list all dependencies and not return any errors)
 +
 +  rospack depends your_stack
 +  
 +Locate and install missing ROS dependencies: For each package that rospack complained about do
 +
 +  # Find out which stack the package is in, either using the ROS wiki or with
 +  roslocate describe <pkg_name>
 +    
 +  # Let us assume the package pkg_name is in stack stack_name.
 +
 +  # Check if there is a .deb package for the stack. They are called 
 +  # ros-<distro>-<stackname>, while all underscores in the stackname 
 +  # are replaced by hyphens (e.g. stack_name becomes ros-fuerte-stack-name). 
 +  # You can search for this package using 
 +  
 +  apt-cache search ros-fuerte-stack-name
 +  
 +  # and install with
 +  
 +  sudo apt-get install ros-fuerte-stack-name
 +  
 +  # If there is no .deb package, install the stack from source using 
 +  
 +  roslocate info stack_name | rosws merge -
 +  
 +  # Remember to also check for system dependencies of the newly-added stack stack_name
 +
 +Now everything should be resolved and you are ready to compile. The //rosmake// command automatically compiles all dependencies and the package or stack given as argument. If later on you already have compiled all dependencies and just updated the package itself, it's also safe to just call //make// in that package, which does not re-build the dependencies (and is therefore faster).
 +
 +  rosmake your_stack
  
software/ros/installation.1366120871.txt.gz · Last modified: 2016/05/19 09:18 (external edit)

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki