Installing simulation environment » History » Revision 21
Revision 20 (Christophe Reymann, 2018-05-18 09:40) → Revision 21/49 (Christophe Reymann, 2018-05-18 13:21)
h1. Installing simulation environment
h2. Dependencies
* Python3 with setuptools, docopt, numpy, pyaml, rospkg, catkin_pkg
* Eigen3
* GDAL (version > 2)
* CMake
* libglew, libglew-dev
* ROS kinetic (on ubuntu: ros-kinetic-desktop ros-kinetic-tf2-eigen)
* Blender
* A c++14 compatible compiler
h2. On own computer
Make sure ROS environment is sourced, then:
<pre>
git clone ssh://git@redmine.laas.fr/laas/users/simon/agridrone/precidrones-main.git && cd precidrones-main/dev && rsync -r /net/skyscanner/volume1/data/precidrone/IGN . && make world
</pre>
And make sure to import the morse simulations before using them, for example (in the precidrones-main/dev folder):
<pre>
morse import morse/preci1
</pre>
h3. On LXD vm
Install and configure lxd:
<pre>
sudo snap install --edge lxd
sudo lxd init
</pre>
Lxd will ask for configuration, I used:
* clustering: no
* new storage pool: yes
* name: default
* type: zfs
* create new zfs pool: yes
* use existing block device: no
* size in GB of the new loop device: 40
* connect to a MAAS server: no
* create local network bridge: yes
* bridge name: lxdbr0
* ipv4 address: auto
* ipv6 address: auto
* LXD availqble over the network: yes
* address to bind lxd to: all
* port: 8443
* trust password: <password>
* auto update stale cached images: yes
* print YAML lxd preseed: yes
Creating the container:
<pre>
sudo lxc launch ubuntu:16.04 precidrone-sim
</pre>
Configuring the container:
Installing dependencies:
<pre>
sudo sh -c 'echo "deb http://packages.ros.org/ros/ubuntu $(lsb_release -sc) main" > /etc/apt/sources.list.d/ros-latest.list'
sudo apt-key adv --keyserver hkp://ha.pool.sks-keyservers.net:80 --recv-key 421C365BD9FF1F717815A3895523BAEEB01FA116
sudo apt update
sudo apt install ros-kinetic-ros-base ros-kinetic-tf2-eigen
</pre>