Installation » History » Revision 10
Revision 9 (Rafael Bailon-Ruiz, 2020-10-06 15:08) → Revision 10/24 (Rafael Bailon-Ruiz, 2020-10-06 15:25)
h1. Installation
This is a quick tutorial on how to install CAMS on your computer. Instructions are different depending on your needs: If a you are a regular user proceed with the [[Installation#Regular user installation process|Regular user installation process]]; and if you are a developer, follow the [[Installation#Developer installation process|Developer installation process]].
In any case, CAMS server requires a PC running a recent GNU/Linux operating system, preferably Ubuntu 18.04 or 20.04. Windows and MacOS are not supported. On the contrary, access to the graphical user interface is possible from any device running a modern web browser.
{{toc}}
h2. Regular user installation process
This guide assumes you are using Ubuntu 18.04. If you are using another operating system make sure that Python 3.5 or later is installed.
h3. Paparazzi framework
First, install the Paparazzi framework using the "one-liner installation process":https://wiki.paparazziuav.org/wiki/Installation#Quickstart_for_Ubuntu_users. If you are not an Ubuntu user follow the "OS specific instructions":https://wiki.paparazziuav.org/wiki/Installation#OS_Specific_Instructions.
Add the environment variables PAPARAZZI_HOME and PAPARAZZI_SRC to your command line interpreter. The code below should work for most users **if you used the one-liner installation**:
<pre><code class="shell">
echo "export PAPARAZZI_HOME=~/paparazzi" >> ~/.bashrc
echo "export PAPARAZZI_SRC=~/paparazzi" >> ~/.bashrc
</code></pre>
Otherwise, you can find more information "here":https://wiki.paparazziuav.org/wiki/Installation#Environment_Variables.
h3. CAMS
Make sure that curl is installed:
<pre><code class="shell">
sudo apt install curl
</code></pre>
Make sure that redis is installed:
<pre><code class="shell">
sudo apt install redis-server
</code></pre>
Install pip3 and update it:
<pre><code class="shell">
sudo apt install python3-pip
pip3 install --user --upgrade pip
</code></pre>
For now the easiest way to install CAMS is to clone the "git repository of the graphical user interface":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_gui and run its installation script.
<pre><code class="shell">
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_gui.git nephelae_gui
cd nephelae_gui
make --trace install pip_options=--user
</code></pre>
To check the installation, launch the server:
<pre><code class="shell">
make demo
</code></pre>
This will (hopefully) start the replay of a UAV flight.
You should now be able connect to the graphical user interface with your web browser on "http://0.0.0.0:8000/":http://0.0.0.0:8000/.
h2. Developer installation process
h3. System requirements
The main programming language is **Python 3.5**. "Official support for Python 2.7 ending by the beginning of 2020":https://pythonclock.org/, no development efforts were made to support Python 2.7.
Most of development and testing where made on "Ubuntu 16.04 LTS Xenial Xerus":http://releases.ubuntu.com/16.04/ on which Python 3.5 is the default Python version.
All server side applications should work on a Unix-based system provided it supports Python 3.5 or later. Compatibility with Microsoft Windows has not been tested.
The client side application is web-based and should work on a modern web browser. (Only tested with Mozilla Firefox and Safari).
h3. Paparazzi framework
Make sure that curl is installed:
<pre><code class="shell">
apt install curl
</code></pre>
h4. System dependencies (for Ubuntu 16.04)
<pre><code class="shell">
add-apt-repository ppa:team-gcc-arm-embedded/ppa
apt update
apt install gcc-arm-linux-gnueabi gcc-arm-none-eabi
</code></pre>
<pre><code class="shell">
add-apt-repository ppa:paparazzi-uav/ppa
apt update
apt install paparazzi-dev paparazzi-jsbsim
</code></pre>
h4. System dependencies (for Ubuntu 18.04)
<pre><code class="shell">
apt install gcc-arm-none-eabi
</code></pre>
<pre><code class="shell">
add-apt-repository ppa:paparazzi-uav/ppa
apt update
apt install paparazzi-dev paparazzi-jsbsim
</code></pre>
h4. Repository
<pre><code class="shell">
git clone -b laas_master https://github.com/pnarvor/paparazzi.git paparazzi
cd paparazzi
make
</code></pre>
LAAS-Nephelae software needs the environment variables PAPARAZZI_HOME and PAPARAZZI_SRC to be set to the root paparazzi folder (where you cloned it). Add these lines to your .bashrc, replacing "paparazzi_path" to where you cloned paparazzi repository.
<pre><code class="shell">
export PAPARAZZI_HOME="paparazzi_path"
export PAPARAZZI_SRC="paparazzi_path"
</code></pre>
Once Paparazzi installed, launch ./paparazzi. In the paparazzi center, build every aircraft you need to use by selecting an item in the _A/C_ menu and then clicking on the _build_ button.
h3. CAMS
Install pip3 and update it:
<pre><code class="shell">
apt install python3-pip
pip3 install --user --upgrade pip
</code></pre>
If you want to update it for all users:
<pre><code class="shell">
pip3 install --upgrade pip
</code></pre>
Clone and install the 3 core packages (in developer mode with the -e pip3 option):
"nephelae_base":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_base.
<pre><code class="shell">
git clone git://redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_base.git nephelae_base
cd nephelae_base
pip3 install --user -e .
</code></pre>
"nephelae_mesonh":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_mesonh.
<pre><code class="shell">
git clone git://redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_mesonh.git nephelae_mesonh
cd nephelae_mesonh
pip3 install --user -e .
</code></pre>
"nephelae_paparazzi":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_paparazzi.
<pre><code class="shell">
git clone git://redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_paparazzi.git nephelae_paparazzi
cd nephelae_paparazzi
pip3 install --user -e .
</code></pre>
"nephelae_planner":https://redmine.laas.fr/projects/nephelae-planner/repository/nephelae_planner.
<pre><code class="shell">
git clone git://redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_planner.git nephelae_planner
cd nephelae_planner
pip3 install --user -e .
</code></pre>
Make sure that redis is installed:
<pre><code class="shell">
apt install redis-server
</code></pre>
Clone and install the "nephelae_gui":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_gui package in developer mode:
<pre><code class="shell">
git clone git://redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_gui.git nephelae_gui
cd nephelae_gui
make install pip_options=--user install_mode=dev
</code></pre>
To check the installation, launch the server:
<pre><code class="shell">
make demo
</code></pre>
This will (hopefully) start the replay of a UAV flight.
You should now be able connect to the graphical user interface with your web browser on "http://0.0.0.0:8000/":http://0.0.0.0:8000/.