Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revisionNext revisionBoth sides next revision | ||
installation [2016/11/16 15:10] – gkazhoya | installation [2022/09/15 15:38] – [Windows Install] arthur | ||
---|---|---|---|
Line 5: | Line 5: | ||
== OS and ROS == | == OS and ROS == | ||
- | The recommended setup is Ubuntu | + | The recommended setup is Ubuntu |
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 | + | Most CRAM components should also work on older Ubuntu versions under ROS Kinetic etc. but with no guarantee. If you encounter any incompatibilities / bugs, [[/ |
- | If you don't have the latest version of ROS, [[http:// | + | If you don't have the latest version of ROS, [[http:// |
Don't forget to source the environment setup file and | Don't forget to source the environment setup file and | ||
Line 25: | Line 25: | ||
$ sudo apt-get install ros-DISTRO-roslisp-repl | $ sudo apt-get install ros-DISTRO-roslisp-repl | ||
</ | </ | ||
+ | |||
+ | where '' | ||
For information on how to use the IDE check the [[http:// | For information on how to use the IDE check the [[http:// | ||
Line 32: | 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 | ||
</ | </ | ||
+ | __**20:04 / Noetic:**__ | ||
+ | <code bash> | ||
+ | $ sudo apt-get install python3-wstool | ||
+ | </ | ||
+ | ===== Installation ===== | ||
- | ------ | + | < |
+ | If you are new to CRAM and are curious to test the ideas behind it, you can try the [[/ | ||
- | If you are new to CRAM and are curious to test the ideas behind it, you can try the [[/ | + | If you want to see the full power of CRAM, [[/ |
- | If you want to see the full power of CRAM, [[/ | + | Please note that [[/ |
+ | If you first tried the minimal version and are now curious to see the full CRAM, please first remove the '' | ||
- | ===== Minimal | + | ==== Minimal installation ==== |
This is a guide for installing the core CRAM packages. It installs the prerequisites of [[/ | This is a guide for installing the core CRAM packages. It installs the prerequisites of [[/ | ||
Line 57: | Line 67: | ||
Now you just need to [[/ | Now you just need to [[/ | ||
- | ===== Full CRAM installation ===== | + | ==== Full installation ==== |
+ | |||
+ | --></ | ||
+ | |||
+ | |||
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. | 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, | ||
+ | |||
+ | === ROS workspace setup === | ||
+ | |||
+ | Skip this part if you already have a ROS workspace. | ||
- | ==== ROS workspace setup ==== | ||
- | 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:// | ||
- | (If you don't like the idea of having a separate | + | < |
+ | We recommend to create | ||
We recommend to create 3 new workspaces chained as following: | We recommend to create 3 new workspaces chained as following: | ||
Line 79: | Line 99: | ||
<code bash> | <code bash> | ||
- | $ mkdir -p ~/ | + | $ mkdir -p ~/ |
- | $ cd ~/ | + | $ cd ~/ |
$ catkin_make | $ catkin_make | ||
$ source devel/ | $ source devel/ | ||
Line 104: | 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, | 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, | ||
Line 111: | 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 ~/ | + | $ cd ~/ |
$ wstool init | $ wstool init | ||
$ wstool merge https:// | $ wstool merge https:// | ||
$ wstool update | $ wstool update | ||
- | $ rosdep install --ignore-src --from-paths | + | $ rosdep install --ignore-src --from-paths |
- | $ cd ~/ | + | $ cd ~/ |
$ catkin_make | $ catkin_make | ||
</ | </ | ||
+ | --></ | ||
- | ==== CRAM package installation ==== | ||
- | Check out and compile all the necessary repositories. | + | If you don't have a ROS workspace, please create one. For example, you can do the following: |
<code bash> | <code bash> | ||
- | $ cd ~/ | + | $ mkdir -p ~/ |
+ | $ cd ~/ | ||
+ | $ catkin_make | ||
+ | $ source devel/ | ||
+ | </ | ||
+ | |||
+ | We create the workspace in the '' | ||
+ | |||
+ | If during '' | ||
+ | Here is a hint: you need to source the ROS environment for '' | ||
+ | |||
+ | <code bash> | ||
+ | $ source / | ||
+ | </ | ||
+ | where '' | ||
+ | |||
+ | Execute these commands and continue from the '' | ||
+ | |||
+ | Now if you execute '' | ||
+ | |||
+ | Don't forget to add the corresponding entry to the bottom of your '' | ||
+ | |||
+ | <code bash> | ||
+ | source $HOME/ | ||
+ | </ | ||
+ | |||
+ | |||
+ | === CRAM and dependencies installation (ROS Noetic Ubuntu 20.04) === | ||
+ | |||
+ | Please checkout the [[https:// | ||
+ | |||
+ | <code bash> | ||
+ | $ sudo apt install ros-noetic-roslisp-repl | ||
+ | $ sudo apt-get install python-rosinstall python-wstool | ||
+ | $ cd ~/workspace/src | ||
$ wstool init | $ wstool init | ||
- | $ wstool merge https:// | + | $ wstool merge https:// |
$ wstool update | $ wstool update | ||
- | $ cd ~/ | + | $ cd ~/ |
+ | $ rosdep update | ||
+ | $ rosdep install --ignore-src --from-paths src/ -r | ||
+ | $ catkin_make | ||
+ | </ | ||
+ | |||
+ | === CRAM and dependencies installation (ROS Melodic Ubuntu 18.04) === | ||
+ | |||
+ | Check out and compile all the necessary repositories: | ||
+ | |||
+ | <code bash> | ||
+ | $ cd ~/ | ||
+ | $ wstool init | ||
+ | $ wstool merge https:// | ||
+ | $ wstool update | ||
+ | $ cd ~/ | ||
+ | $ rosdep update | ||
+ | $ rosdep install --ignore-src --from-paths src/ -r | ||
+ | $ catkin_make | ||
+ | </ | ||
+ | |||
+ | Note that the '' | ||
+ | |||
+ | For ROS melodic and the current packages, one thing needs to be fixed. The package '' | ||
+ | <code bash> | ||
+ | roscd octomap | ||
+ | sudo nano package.xml | ||
+ | </ | ||
+ | |||
+ | Now remove the following line within: | ||
+ | <code xml> | ||
+ | < | ||
+ | </ | ||
+ | |||
+ | The installation is finished, please continue to the section **Get ready for development** down below. | ||
+ | |||
+ | If something went wrong consult the [[/ | ||
+ | |||
+ | === CRAM and dependencies installation (ROS Kinetic Ubuntu 16.04) === | ||
+ | |||
+ | Check out and compile all the necessary repositories: | ||
+ | |||
+ | <code bash> | ||
+ | $ cd ~/ | ||
+ | $ wstool init | ||
+ | $ wstool merge https:// | ||
+ | $ wstool update | ||
+ | $ touch iai_maps/ | ||
+ | $ cd ~/ | ||
+ | $ rosdep update | ||
+ | $ rosdep install --ignore-src --from-paths src/ -r | ||
+ | $ catkin_make | ||
+ | </ | ||
+ | |||
+ | Note that the '' | ||
+ | |||
+ | < | ||
+ | Before executing this step you can edit your '' | ||
+ | --></ | ||
+ | |||
+ | If something went wrong consult the [[/ | ||
+ | |||
+ | |||
+ | === CRAM and dependencies installation (ROS Indigo Ubuntu 14.04) === | ||
+ | |||
+ | 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. | ||
+ | For that please download the SBCL version 1.3.1 from the [[https:// | ||
+ | Then extract the archive (in Nautilus, the file browser, it will be '' | ||
+ | |||
+ | <code bash> | ||
+ | $ cd ~/ | ||
+ | </ | ||
+ | |||
+ | < | ||
+ | KnowRob seems to have some issues with Java 7, so if the compilation step below complains about rosjava or gradle, [[https:// | ||
+ | --></ | ||
+ | |||
+ | Next step is to check out and compile all the necessary repositories: | ||
+ | |||
+ | <code bash> | ||
+ | $ cd ~/ | ||
+ | $ wstool init | ||
+ | $ wstool merge https:// | ||
+ | $ wstool update | ||
+ | $ cd ~/ | ||
$ rosdep update | $ rosdep update | ||
$ rosdep install --ignore-src --from-paths src/ | $ rosdep install --ignore-src --from-paths src/ | ||
Line 136: | Line 275: | ||
</ | </ | ||
- | Note that the '' | + | Note that the '' |
- | Before executing this step you can edit your '' | + | |
If something went wrong consult the [[/ | If something went wrong consult the [[/ | ||
+ | ==== Windows Install ==== | ||
+ | - Enable Hardware Virtualization in your BIOS settings | ||
+ | - [[https:// | ||
+ | - Enable the WSL 2 feature in '' | ||
+ | - Set Firewall to allow WSL comunication. Easiest way is by disabling Firewall for public networks, or add a rule for WSL. | ||
+ | - [[https:// | ||
+ | - Import the image into WSL from Powershell with < | ||
+ | - Set the image as default with < | ||
+ | - Launch Ubuntu-20.04 from the windows menu. The username and password is '' | ||
+ | - '' | ||
+ | - '' | ||
+ | |||
+ | Happy hacking! | ||
+ | |||
+ | === How to launch the Jupyter Notebook === | ||
+ | |||
+ | - '' | ||
+ | - '' | ||
+ | - Open the URL in your browser | ||
===== Get ready for development ===== | ===== Get ready for development ===== | ||
Line 146: | Line 303: | ||
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:// | 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:// | ||
- | Open your emacs and enjoy the repl animation ;) | + | Open your emacs and wait until "ROS welcomes you": |
<code bash> | <code bash> |