My objective is to have:
- A virtual image: VirtualBox (preferred), VMWare
- with Ubuntu: precise? 12.04 (preferred because LTS), quantal 12.10, raring 13.04
- ROS: Groovy (preferred because latest stable), Hydro (but still unstable), Fuerte (no because no Catkin)
- MORSE simulator: 1.0 (latest stable), newer
If you don’t want to install it yourself, you can download my VMWare 4.1.4 image of a ROS Groovy on an Ubuntu Quantal 12.10 with MORSE (updated 2013-05-13).
If it works on a newer version of VMWare, please let me know.
Constraints & Incompatible Combinations
I learnt the hard way the multiple incompatible combinations ;-)
Here some constraints:
- Ubuntu and ROS. You can find here a really good help. So, Groovy works on 12.04 and Quantal (12.10) but not Raring (13.04) which can be used with Hydro.
- VirtualBox and Ubuntu. The following report on using the latest VirtualBox on OSX 4.2.x :
- Ubuntu 12.04: no problem but Groovy cannot be installed on top of it.
- Ubuntu 12.10: it is really slow. It seems to be 3D support problem but I did not succeed to fix it.
- Ubuntu 13.04: it works perfectly after installing VBox tools and 3D acceleration (cf. here) but Groovy cannot be installed on top of it.
- ROS and MORSE. MORSE requires Python>=3 but ROS is currently Python 2.7 compliant, even Hydro. However, the MORSE installations notes describes a solution to make install.
Finally I went for:
- VMWare 4.1.4
- Ubuntu 12.10
- ROS Groovy
- MORSE bleeeding edge
Step 1: Ubuntu Quantal (12.10) on VMWare 4.1.4
It has been straightforward. Steps:
- Download Ubuntu iso (
ubuntu-12.10-desktop-i386.iso
)
- Create a VM image in VMWare
- Boot on Iso mounted in CD
- Install
- VMWare Tools should install automatically
- Ensure that 3D acceleration checkbox is cheked in the VM preferences
-
Ensure 3D acceleration is working well by doing in command line:
/usr/lib/nux/unity_support_test -p
- I advise you to do a VM snapshot here ;-)
Step 2: ROS Groovy Installation
Documentation is here.
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu quantal main" > /etc/apt/sources.list.d/ros-latest.list'
wget http://packages.ros.org/ros.key -O - | sudo apt-key add -
sudo apt-get update
sudo apt-get install ros-groovy-desktop-full
sudo rosdep init
rosdep update
echo "source /opt/ros/groovy/setup.bash" >> ~/.bashrc
source ~/.bashrc
Test that ROS is working
TODO: Je ne suis plus sûr de cette ligne ;-)
roscheck ?
You can also do the ROS tutorials.
Step 3: MORSE Installation
Documentation is here.
But we must make ROS Python 3 compliant first.
ROS and Python 3
Documentation is here.
Doing sudo apt-get install morse-simulator
did not work for me because of Python problems.
Manual installation steps:
- Re-install ROS
catkin_pkg
from sources to make it use Python 3.
git clone git://github.com/ros-infrastructure/catkin_pkg.git -b 0.1.9
cd catkin_pkg
sudo python3 setup.py install
- Re-install ROS
catkin
from sources to make it use Python 3. However, cloning the regular catkin repository on github did not work for me because of syntax changes in Python 3 (u"xxx"
not supported anymore). So I use here my cloned and modified version. However, I advise you to first check if it has been corrected in the official repository.
# slightly modified version of catkin to support Python 3
git clone git://github.com/LucFabresse/catkin.git
cd catkin
sudo python3 setup.py install
MORSE real Installation
sudo apt-get install python3-dev
cd ~
git clone https://github.com/laas/morse.git
cd morse
# if you want a stable version, just checkout the right branch or skip the next command
git checkout -b 1.0_STABLE -t origin/1.0_STABLE
mkdir build && cd build
# compile with the support you need. have a look at cmake --help.
cmake -DPYMORSE_SUPPORT=ON -DCMAKE_BUILD_TYPE=Release -DBUILD_ROS_SUPPORT=ON -DPYTHON_EXECUTABLE=`which python3` ..
sudo make install
You can now test that MORSE is working by executing:
morse check
Step 4: Post-Install
Congrats, if you reached this step, everything is done and you can work.
But I advise you to do a VM snapshot or better a VM clone ;-)
How to Update the Installation
For Ubuntu and ROS:
apt-get update
apt-get upgrade
Be careful, it may install a non Python3-compliant ROS version!
cd ~/morse
git pull
cd build
sudo make install
Use it remotely
You can even use it remotely through ssh -X
Conclusion
That’s all folks.
I hope it saved some time for someone out there.