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
Next revisionBoth sides next revision
installation [2016/01/28 11:37] – [CRAM installation] gkazhoyainstallation [2022/09/15 12:42] – [Windows Install] arthur
Line 1: Line 1:
 ====== CRAM installation ====== ====== CRAM installation ======
  
-If you get into problems, please consult the [[/support|Support page]]. +===== Prerequisites =====
- +
-===== CRAM v0.2 (recommended) ===== +
- +
-This is a guide for installing the main CRAM packages. It covers installing the packages you need to get the system up and running to the point where you can run and test it in a simulation mode. Setting up the system on a real robot is more complex (mostly involving the usual ROS-based platform setup) and is out of scope of this guide. +
- +
-==== Prerequisites ====+
  
 == OS and ROS == == OS and ROS ==
  
-The recommended setup is Ubuntu 14.04 LTS with ROS Indigo. \\+The recommended setup is Ubuntu 18.04 LTS with ROS Melodic. \\
 This is the setup under which the CRAM team is working and it is best supported. This is the setup under which the CRAM team is working and it is best supported.
  
-The core components of CRAM should also work on newer Ubuntu versions under ROS Jade, as well as on older systems but with no guarantee. If you encounter any incompatibilities / bugs, [[/support|please let us know]].+Most CRAM components should also work on older Ubuntu versions under ROS Kinetic etc. but with no guarantee. If you encounter any incompatibilities / bugs, [[/support|please let us know]].
  
-If you don't have the latest version of ROS, [[http://wiki.ros.org/indigo/Installation/Ubuntu|install it]] (the desktop non-full version should be enough). \\+If you don't have the latest version of ROS, [[http://wiki.ros.org/kinetic/Installation/Ubuntu|install it]] (the desktop non-full version should be enough). \\
 Don't forget to source the environment setup file and Don't forget to source the environment setup file and
  
Line 31: Line 25:
 $ sudo apt-get install ros-DISTRO-roslisp-repl $ sudo apt-get install ros-DISTRO-roslisp-repl
 </code> </code>
 +
 +where ''DISTRO'' is your ROS version, e.g., ''melodic'' or ''noetic''
  
 For information on how to use the IDE check the [[http://cram-system.org/doc/ide|Setup and IDE page]]. For information on how to use the IDE check the [[http://cram-system.org/doc/ide|Setup and IDE page]].
Line 38: Line 34:
 You will need those for setting up the ROS workspace and checking out code. You will need those for setting up the ROS workspace and checking out code.
  
 +__**18.04 / Melodic:**__
 <code bash> <code bash>
 $ sudo apt-get install python-rosinstall python-wstool $ sudo apt-get install python-rosinstall python-wstool
 </code> </code>
 +__**20:04 / Noetic:**__
 +<code bash>
 +$ sudo apt-get install python3-wstool
 +</code>
 +===== Installation =====
 +
 +<html><!--
 +If you are new to CRAM and are curious to test the ideas behind it, you can try the [[/installation#minimal_installation|Minimal  installation]], which will install all the packages necessary to go through the [[/tutorials#beginner_tutorials|CRAM beginner tutorials]]: these explain the main concepts of CRAM and present the CRAM Plan Language.
 +
 +If you want to see the full power of CRAM, [[/installation#full_installation|Full installation]] is recommended.
 +
 +Please note that [[/installation#minimal_installation|Minimal installation]] and [[/installation#full_installation|Full installation]] are mutually exclusive.
 +If you first tried the minimal version and are now curious to see the full CRAM, please first remove the ''cram_3rdparty'' and ''cram_core'' directories from the ''src'' directory of your ROS workspace and then proceed with the full installation.
 +
 +==== Minimal installation ====
 +
 +This is a guide for installing the core CRAM packages. It installs the prerequisites of [[/tutorials#beginner_tutorials|CRAM beginner tutorials]], leaving out big dependencies such as [[http://knowrob.org|KnowRob]].
 +
 +In the ''src'' directory of your ROS workspace execute the following commands:
 +
 +<code bash>
 +$ git clone https://github.com/cram2/cram_3rdparty.git
 +$ git clone https://github.com/cram2/cram_core.git
 +$ rosdep install --ignore-src --from-paths cram_3rdparty cram_core
 +$ cd .. && catkin_make
 +</code>
 +
 +Now you just need to [[/installation#get_ready_for_development|get ready for development]] and then get started with the [[/tutorials#beginner_tutorials|beginner tutorials]]!
 +
 +==== Full installation ====
 +
 +--></html>
 +
 +
 +
 +
 +This is a guide for installing the main CRAM packages. It covers installing the packages you need to get the system up and running to the point where you can run and test it in a simulation mode. Setting up the system on a real robot is more complex (mostly involving the usual ROS-based platform setup) and is out of scope of this guide.
 +
 +Nevertheless, CRAM is a big system that has some external dependencies. Most of them are automatically installed as Debian packages, some you need to install from source. 
  
 +=== ROS workspace setup ===
  
-==== ROS workspace setup ====+Skip this part if you already have a ROS workspace.
  
-CRAM is a big system that has some external dependencies. Most of them are automatically installed as Debian packages, one you need to install from source: the knowledge processing system [[http://knowrob.org/|KnowRob]]. We recommend to create separate chained (overlaid) ROS workspaces for different components to make compilation faster and easier. (KnowRob is partly written in rosjava and if you will have it in the same workspace with another 10 packages its sole presence in the workspace will make the compilation of your 10 packages many times longer.) You can read more on workspace overlaying [[http://wiki.ros.org/catkin/Tutorials/workspace_overlaying#Chaining_catkin_workspaces|here]]. 
  
-(If you don't like the idea of having a separate workspace for KnowRob and you're well familiar with ROS the only thing you will need to install CRAM is [[https://raw.githubusercontent.com/cram2/cram_projection_demos/master/cram-with-projection-with-knowrob.rosinstall|this .rosinstall file]].)+ 
 + 
 +<html><!-- 
 +We recommend to create separate chained (overlaid) ROS workspaces for different components to make compilation faster and easier. (KnowRob is partly written in rosjava and if you will have it in the same workspace with another 10 packages its sole presence in the workspace will make the compilation of your 10 packages many times longer.) You can read more on workspace overlaying [[http://wiki.ros.org/catkin/Tutorials/workspace_overlaying#Chaining_catkin_workspaces|here]].
  
 We recommend to create 3 new workspaces chained as following: We recommend to create 3 new workspaces chained as following:
Line 60: Line 99:
  
 <code bash> <code bash>
-$ mkdir -p ~/workspace/ros_kb/src # kb for knowledge base +$ mkdir -p ~/workspace/ros_knowrob/src 
-$ cd ~/workspace/ros_kb+$ cd ~/workspace/ros_knowrob
 $ catkin_make $ catkin_make
 $ source devel/setup.bash $ source devel/setup.bash
Line 85: Line 124:
  
  
-==== KnowRob installation ====+=== KnowRob installation ===
  
 The knowledge base workspace will be used for installing KnowRob, which is a knowledge management system that CRAM uses for retrieving knowledge mostly about the environment, sometimes common-sense knowledge etc. We only need the basic installation from the [[http://knowrob.org/installation/catkin|official Knowrob installation webpage]]. It comes down to, first, installing ''rosjava'', which can be done through ''apt-get'', and then checking out and compiling KnowRob code: The knowledge base workspace will be used for installing KnowRob, which is a knowledge management system that CRAM uses for retrieving knowledge mostly about the environment, sometimes common-sense knowledge etc. We only need the basic installation from the [[http://knowrob.org/installation/catkin|official Knowrob installation webpage]]. It comes down to, first, installing ''rosjava'', which can be done through ''apt-get'', and then checking out and compiling KnowRob code:
Line 92: Line 131:
 $ sudo apt-get install ros-DISTRO-rosjava # where DISTRO is Indigo or Jade etc. $ sudo apt-get install ros-DISTRO-rosjava # where DISTRO is Indigo or Jade etc.
 $ rosdep update $ rosdep update
-$ cd ~/workspace/ros_kb/src+$ cd ~/workspace/ros_knowrob/src
 $ wstool init $ wstool init
 $ wstool merge https://raw.github.com/knowrob/knowrob/master/rosinstall/knowrob-base.rosinstall $ wstool merge https://raw.github.com/knowrob/knowrob/master/rosinstall/knowrob-base.rosinstall
 $ wstool update $ wstool update
-$ rosdep install --ignore-src --from-paths stacks/ +$ rosdep install --ignore-src --from-paths . 
-$ cd ~/workspace/ros_kb+$ cd ~/workspace/ros_knowrob
 $ catkin_make $ catkin_make
 </code> </code>
 +--></html>
  
  
-==== CRAM installation ==== 
  
-Check out and compile all the necessary repositories.+If you don't have a ROS workspace, please create oneFor example, you can do the following:
  
 <code bash> <code bash>
-cd ~/workspace/ros_lisp/src +mkdir -p ~/workspace/ros/src 
-$ wstool init +$ cd ~/workspace/ros
-$ wstool merge https://raw.githubusercontent.com/cram2/cram_projection_demos/master/cram-with-projection.rosinstall +
-$ wstool update +
-$ cd ~/workspace/ros_lisp +
-$ rosdep update +
-$ rosdep install --ignore-src --from-paths src/+
 $ catkin_make $ catkin_make
 +$ source devel/setup.bash
 </code> </code>
  
-Note that the ''wstool update'' command is the one that downloads the source code of CRAM. +We create the workspace in the ''$HOME/workspace'' directory. Make sure you adjust the paths if you want to create them somewhere else.
-Before executing this step you can edit your ''~/workspace/ros_lisp/src/.rosinstall'' file and comment out the CRAM repositories that you don't expect to be using. See the comments inside the file for more details.+
  
-If the compilation went through you're ready for some awesome programming! We recommend to go through the [[/tutorials|tutorials]] first. You might also find some useful links on the [[/doc/getting_started|Getting Started page]]. +If during ''catkin_make'' you got an error that it is not defined, it means that you didn'finish the ROS installation
- +Here is a hint: you need to source the ROS environment for ''catkin_make'' to work:
-If something went wrong consult the [[/support|Support page]] or feel free to drop an email to the person maintaining this page (check the "Last edited by" part of the footer). +
- +
- +
----- +
----- +
- +
- +
- +
-===== CRAM v0.1 (legacy) ===== +
- +
-==== Basic ==== +
- +
-You'll have to perform the following steps: +
- +
-=== Install ROS === +
- +
-If you don'have the latest version of ROS, [[http://wiki.ros.org/hydro/Installation/Ubuntu|install it]]. (The desktop non-full version should be enough.) \\ +
-Currently supported versions of ROS in CRAM are Hydro and Groovy. \\ +
-Don't forget to+
  
 <code bash> <code bash>
-sudo rosdep init +source /opt/ros/DISTRO/setup.bash
-$ rosdep update+
 </code> </code>
 +where ''DISTRO'' is, e.g., kinetic.
  
-=== Install roslisp addons ===+Execute these commands and continue from the ''catkin_make'' step.
  
-Install roslisp_common and roslisp_repl:+Now if you execute ''roscd'' you will end up in ''ros/devel''
 + 
 +Don't forget to add the corresponding entry to the bottom of your ''~/.bashrc'':
  
 <code bash> <code bash>
-sudo apt-get install ros-hydro-roslisp-common +  source $HOME/workspace/ros/devel/setup.bash
-$ sudo apt-get install ros-hydro-roslisp-repl+
 </code> </code>
  
-The source code can be found on GitHub: \\ 
-//roslisp_common//: https://github.com/ros/roslisp_common \\ 
-//roslisp_repl//: https://github.com/ros/roslisp_repl 
  
-=== Install cram_core === +=== CRAM and dependencies installation (ROS Noetic Ubuntu 20.04) ===
-<code bash>  sudo apt-get install ros-hydro-cram-core</code>+
  
-The source code is hosted on GitHub\\ +Please checkout the [[https://github.com/cram2/cram/blob/devel/README.md|README]] on the devel branch of the [[https://github.com/cram2/cram/tree/devel|CRAM github repository]] for the most recent installation instructionsThe noetic support is currently still in development.
-//cram_core//https://github.com/cram-code/cram_core +
-     +
-You're done. +
- +
----- +
- +
-==== For Developers ==== +
- +
-If you're planning to participate in the development of CRAM or to write your own CRAM packages, **in addition to the above-mentioned steps** do the following: +
- +
-=== Set up your ROS environment === +
- +
-Install the ''wstool'' and ''rosinstall'', they are available as Debians:+
  
 <code bash> <code bash>
-$ sudo apt-get install python-rosinstall +$ sudo apt install ros-noetic-roslisp-repl 
-$ sudo apt-get install python-wstool+$ sudo apt-get install python-rosinstall python-wstool 
 +$ cd ~/workspace/src 
 +$ wstool init 
 +$ wstool merge https://raw.githubusercontent.com/cram2/cram/devel/cram-20.04.rosinstall 
 +$ wstool update 
 +$ cd ~/workspace/ 
 +$ rosdep update 
 +$ rosdep install --ignore-src --from-paths src/ -r 
 +$ catkin_make
 </code> </code>
  
-Set up your ROS workspaces. Until all the CRAM packages get catkinized, you will need both catkin and rosbuild workspaces (need more details: check [[installation:environment|here]]). However, if you are only going to use the core of CRAM, the catkin workspace would be sufficient. +=== CRAM and dependencies installation (ROS Melodic Ubuntu 18.04) ===
- +
-=== Get the CRAM sources into your workspace ===+
  
-Go to your catkin workspace and use wstool to pull the source of the core CRAM packages from GIT''cram_core'' and it's dependency ''cram_3rdparty''.+Check out and compile all the necessary repositories:
  
 <code bash> <code bash>
-$ cd MY_CATKIN_WORKSPACE_PATH/src+$ cd ~/workspace/ros/src
 $ wstool init $ wstool init
-$ wstool set cram_core --git https://github.com/cram-code/cram_core.git +$ wstool merge https://raw.githubusercontent.com/cram2/cram/master-melodic/cram-18.04.rosinstall 
-$ wstool set cram_3rdparty --git https://github.com/cram-code/cram_3rdparty.git+$ wstool update 
 +$ cd ~/workspace/ros 
 +$ rosdep update 
 +$ rosdep install --ignore-src --from-paths src-r 
 +$ catkin_make
 </code> </code>
-where ''MY_CATKIN_WORKSPACE_PATH'' is, e.g., ''~/workspace/catkin''.\\ 
-If you already called ''wstool init'' before, skip this particular command. 
  
-''wstool'' is nothing more than a tool for getting updates from all your Git repositories at once, so that you could call ''wstool update'' once instead of ''cd MY_GIT_REPO && git pull'' multiple times. For more information about ''wstool'' check out its [[http://wiki.ros.org/wstool|page on ROS wiki]]. +Note that the ''wstool update'' command is the one that downloads the source code of CRAM and its dependencies.
- +
-Finally, let ROS acknowledge the new packages, and build them:+
  
 +For ROS melodic and the current packages, one thing needs to be fixed. The package ''octomap'' contains a dependency to a ROS2 package, which can be ignored. Open the ''package.xml'' of octomap.
 <code bash> <code bash>
-$ wstool update +roscd octomap 
-$ rospack profile +sudo nano package.xml
-$ source ~/.bashrc+
 </code> </code>
  
-<code> +Now remove the following line within: 
-cd ..                 (i.e. cd MY_CATKIN_WORKSPACE_PATH) +<code xml
-$ catkin_make +<exec_depend condition="$ROS_VERSION == 2">ament_cmake</exec_depend>
-$ catkin_make install+
 </code> </code>
  
-=== Get ready for development ===+The installation is finished, please continue to the section **Get ready for development** down below.
  
-Before you open emacs you might want to configure it, at least set up the clipboard properly to enable copy/paste from/to other apps. That is described in the [[http://cram-system.org/doc/ide|Setup and IDE]] and [[http://cram-system.org/doc/emacs-config|Emacs Initialization File]] pages and there is also more than enough material available online.+If something went wrong consult the [[/support|Support page]] or feel free to drop an email to the person maintaining this page (check the "Last edited by" part of the footer).
  
-Open your emacs and enjoy the repl animation ;)+=== CRAM and dependencies installation (ROS Kinetic Ubuntu 16.04=== 
 + 
 +Check out and compile all the necessary repositories:
  
 <code bash> <code bash>
-roslisp_repl &+cd ~/workspace/ros/src 
 +$ wstool init 
 +$ wstool merge https://raw.githubusercontent.com/cram2/cram/master/cram-16.04.rosinstall 
 +$ wstool update 
 +$ touch iai_maps/iai_dlr_cutting_demo/CATKIN_IGNORE 
 +$ cd ~/workspace/ros 
 +$ rosdep update 
 +$ rosdep install --ignore-src --from-paths src/ -r 
 +$ catkin_make
 </code> </code>
  
-Compiling packages using the ROS build system is not enough for code written in Lisp. To compile the CRAM packages that you want to use in Lisp, type the following in the REPL in your emacs: +Note that the ''wstool update'' command is the one that downloads the source code of CRAM and its dependencies.
- +
-<code+
-  , +
-  r-l-s +
-  cram_NAME +
-  RET +
-</code> +
-where NAME is e.g. ''language''.+
  
-You're ready for some awesome Lisp programmingCheck out the [[doc/getting_started|Getting Started]] section if you need more info.+<html><!-- 
 +Before executing this step you can edit your ''~/workspace/ros/src/.rosinstall'' file and comment out the CRAM repositories that you don't expect to be using. See the comments inside the [[https://github.com/cram2/cram_projection_demos/blob/master/cram.rosinstall|.rosinstall file]] for more details. 
 +--></html>
  
 If something went wrong consult the [[/support|Support page]] or feel free to drop an email to the person maintaining this page (check the "Last edited by" part of the footer). If something went wrong consult the [[/support|Support page]] or feel free to drop an email to the person maintaining this page (check the "Last edited by" part of the footer).
  
----- 
  
-==== For Advanced CRAM Development ====+=== CRAM and dependencies installation (ROS Indigo Ubuntu 14.04) ===
  
-If you need more than just the core functionality of CRAM but also the other major components, **in addition to the above-mentioned steps** do the following: +CRAM uses the newest version of the Lisp compiler which is not available on 14.04. 
- +That is not a problem as we can install it ourselves. 
-=== Get the source of other CRAM components === +For that please download the SBCL version 1.3.1 from the [[https://sourceforge.net/projects/sbcl/files/sbcl/1.3.1/|SBCL webpage]]. You will most likely need the [[https://sourceforge.net/projects/sbcl/files/sbcl/1.3.1/|64 bit Linux version]]. 
- +Then extract the archive (in Nautilus, the file browserit will be ''right click'' -> ''extract here'')Then go to the place where you extracted the archive in the terminal and execute the install script:
-Go to your catkin workspace (or rosbuild workspace depending on the package) and use wstool to pull the CRAM stacks from GITWe recommend you to get the code from the following  major CRAM repos: ''cram_highlevel'', ''cram_physics''''cram_pr2'', ''cram_bridge''.\\ +
-Please note that they are currently in active development.\\ +
-''cram_highlevel'' is a catkinized metapackege, the rest is rosbuild at the moment.+
  
 <code bash> <code bash>
-$ cd ~/workspace/rosbuild              (or cd ~/workspace/catkin) +$ cd ~/Downloads/sbcl-1.3.1-x86-64-linux && sh install.sh
-$ wstool set cram_NAME --git https://github.com/cram-code/cram_NAME.git +
-$ wstool update +
-$ rospack profile +
-$ source setup.bash+
 </code> </code>
  
-where NAME: ''highlevelphysicspr2, ...''+<html><!-- 
 +KnowRob seems to have some issues with Java 7so if the compilation step below complains about rosjava or gradle[[https://askubuntu.com/questions/464755/how-to-install-openjdk-8-on-14-04-lts|please install Java 8]]. 
 +--></html>
  
-=== Compile the packages === +Next step is to check out and compile all the necessary repositories:
- +
-Rosmake and install the CRAM packages you want to use:+
  
 <code bash> <code bash>
-rosdep install cram_NAME +cd ~/workspace/ros/src 
-rosmake cram_NAME +wstool init 
-rosdep install --from-paths src -i -y # in the workspace root +wstool merge https://raw.githubusercontent.com/cram2/cram/master/cram-14.04.rosinstall 
-</code> +$ wstool update 
- +$ cd ~/workspace/ros 
-The above commands might not work on the catkin metapackages that you've put into your workspace just now, so you might want to build them using catkin: +$ rosdep update 
-<code bash> +$ rosdep install --ignore-src --from-paths src/
-$ cd ~/workspace/catkin+
 $ catkin_make $ catkin_make
 </code> </code>
  
-Some of the CRAM packages have external dependencies. Most of them will be resolved using the ''rosdep install'' command, it will install all the system dependencies needed for your packages. The command might not work recursively, so you might need to call it on separate packages of the metapackage.+Note that the ''wstool update'' command is the one that downloads the source code of CRAM and its dependencies such as KnowRob.
  
-The ''rosmake'' command is essential for some packages, as in some cases the source code of the 3rd party package is being downloaded using the ''make'' scripts.+If something went wrong consult the [[/support|Support page]] or feel free to drop an email to the person maintaining this page (check the "Last edited by" part of the footer).
  
-Don't forget to compile the package in Lisp after using the ''rosmake'':+==== Windows Install ====
  
-<code lisp> +1. Enable Hardware Virtualization
-  (ros-load:load-system "cram_NAME" "cram-NAME"+
-</code>+
  
-Sometimes a restart of your Lisp environment is necessary after a ''rosmake'' recompilation.+2[[https://medium.com/javarevisited/using-wsl-2-with-x-server-linux-on-windows-a372263533c3|Install, configure and launch VcXsrv]]
  
-If your package didn't compile continue reading to get the missing dependencies.+3Set up WSL 2
  
-=== cram_highlevel ===+4. Set Firewall to allow WSL comunication. Easiest by disabeling Firewall for public networks, but you can add a rule for WSL.
  
-The packages in ''cram_highlevel'' that use a knowledge base have dependencies on the package ''json_prolog'' from [[http://www.knowrob.org|KnowRob]]. To install KnowRob you will also need ''rosjava_jni'' and ''cmake_modules''.+5. [[https://seafile.zfn.uni-bremen.de/f/8960a515395f4a96b97b/|Download the WSL image]]
  
-<code bash+6. Import the image into WSL from Powershell with  
-$ sudo apt-get install ros-hydro-cmake-modules +<code> 
-$ roscd +wsl --import Ubuntu-20.04-Cram C:\Users\test\Documents\Ubuntu-20.04-Cram C:\Users\test\Downloads\Ubuntu2004RosCramJupyter.tar
-$ wstool set rosjava_jni --git https://github.com/gheorghelisca/rosjava_jni.git +
-$ rosws merge https://raw.github.com/knowrob/knowrob/master/rosinstall/knowrob-all.rosinstall +
-$ wstool update +
-$ rospack profile +
-$ source ~/.bashrc +
-$ rosdep install rosjava_jni +
-$ rosmake rosjava_jni +
-$ rosdep install knowrob +
-$ rosmake knowrob+
 </code> </code>
  
-In order to use ''json_prolog'' from ''knowrob'' and other java using packages you need to have JAVA_HOME set up in your environmentFor that add ''export JAVA_HOME=/usr/lib/jvm/java-MY_NEWEST_VERSION_OF_JAVA_HERE'' to your ''~/.bashrc''+7Set the image as default with 
- +<code> 
-One of the major features of KnowRob utilized in CRAM are the semantic maps of the environment. The main maps used for the indoor scenarios in the CRAM development team can be found in the ''iai_maps'' Git repo under ''code-iai''. They have a dependency on the ''robot_state_chain_publisher'' and ''map_server'', so you'll need that too. +wsl --set-default Ubuntu-20.04-Cram
- +
-<code bash+
-$ cd MY_CATKIN_WORKSPACE/src +
-$ wstool set robot_state_chain_publisher --git https://github.com/code-iai/robot_state_chain_publisher.git +
-$ wstool update +
-$ cd .. +
-$ catkin_make+
 </code> </code>
  
-<code bash> +8Launch Ubuntu-20.04 from the windows menu.
-$ sudo apt-get install ros-hydro-map-server +
-$ roscd +
-$ wstool set iai_maps --git https://github.com/code-iai/iai_maps.git +
-$ wstool update iai_maps +
-$ rospack profile +
-$ source ~/.bashrc +
-$ rosmake iai_maps +
-</code>+
  
-The ''iai_maps'' package needs the official ''navigation'' stack for displaying the collision map, so you might need that as well at some point: +9. 'glxgearswill test the xforwarding to VcXsrv. If nothing happens, check the VcXsrv and Firewall setup.
-<code bash> +
-$ sudo apt-get install ros-hydro-navigation +
-</code>+
  
-If you have a problem with ''rosdep'', you can as well install the missing dependencies manuallyUse ''rosdep check STACK_NAME'to find out what's needed.+10. 'roslisp_repl &will launch Emacs.
  
-If you're getting ''autoconf'' error messages, do ''sudo apt-get install autoconf''. (<- this should go into FAQ)+Happy hacking!
  
-If there will be a problem with ''json_prolog'', you might want to try using java-6 instead of java-7. For that you'd have to add the following lines to your ~/.bashrc:+How to launch the Jupyter Notebook
  
-<code bash> +1. ''roslaunch cram_pr2_pick_place_demo sandbox.launch &''
-  JAVA_HOME=/usr/lib/jvm/java-6-openjdk +
-  export JAVA_HOME +
-  PATH=$PATH:$JAVA_HOME +
-  export PATH +
-</code>+
  
-=== cram_physics ===+2. '''jupyter-lab --allow-root --no-browser --port 8888'''
  
-Another set of dependencies is on ''moveit_msgs'' (''arm_navigation_msgs'' in the past). You will also need an inverse kinematics solver to do grasping in the simulation (or on the real robot, why not). So you might want to install MoveIt:+3. Open the URL in your browser
  
-<code bash> +===== Get ready for development =====
-$ sudo apt-get install ros-hydro-moveit-full-pr2 +
-$ rospack profile +
-$ source ~/.bashrc +
-</code>+
  
-''bullet_reasoning'' has a dependency on the household objects database messages from ROS, the corresponding package is ''ros-hydro-household-objects-database-msgs''.+Before you open emacs you might want to configure it, at least set up the clipboard properly to enable copy/paste from/to other apps. That is described in the [[http://cram-system.org/doc/ide|Setup and IDE]] and [[http://cram-system.org/doc/emacs-config|Emacs Initialization File]] pages and there is also more than enough material available online.
  
-=== cram_pr2 === +Open your emacs and wait until "ROS welcomes you":
- +
-''pr2_reachability_costmap'' has a dependency on ''iai_kinematics_msgs''. They can be found on github:+
  
 <code bash> <code bash>
-cd MY_CATKIN_WORKSPACE/src +roslisp_repl &
-$ wstool set iai_common_msgs --git https://github.com/code-iai/iai_common_msgs.git +
-$ wstool update iai_common_msgs +
-$ cd .. +
-$ catkin_make+
 </code> </code>
  
-=== roslisp ===+Compiling packages using the ROS build system is not enough for code written in Lisp. To compile the CRAM packages that you want to use in Lisp, type the following in the REPL in your Emacs:
  
-If you for some reason will want to have the sources of the ROS Lisp packagesthey can be found here: ''https://github.com/ros/roslispNAME.git'', where NAME: ''_common'', ''_repl'' or nil. You can clone and compile them in your catkin workspace just like you did with the catkinized CRAM packages.+<code> 
 +  , 
 +  r-l-s 
 +  cram_NAME 
 +  RET 
 +</code> 
 +where NAME is e.g. ''language''.
  
-=== .rosinstall ===+You're ready for some awesome programming! We recommend to go through the [[/tutorials|tutorials]] first. You might also find some useful links on the [[/doc/getting_started|Getting Started page]].
  
-The ''.rosinstall'' file you could use to speed up the installation is described [[http://cram-system.org/.rosinstall|here]].