Project

General

Profile

Installation » History » Version 21

Rafael Bailon-Ruiz, 2020-12-08 18:31

1 1 Rafael Bailon-Ruiz
h1. Installation
2
3 18 Rafael Bailon-Ruiz
This is a quick tutorial on how to install CAMS on your computer. Instructions are different depending on your needs: *If you are using ubuntu 20.04 proceed with the [[Installation#One-step install|one-step install]]. If you are a developper that wants to control the setup process, follow the [[Installation#Advanced install|Advanced install]] instructions.*
4 1 Rafael Bailon-Ruiz
5 18 Rafael Bailon-Ruiz
In any case, CAMS server requires a PC running a recent GNU/Linux operating system, preferably 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.
6 1 Rafael Bailon-Ruiz
7 5 Rafael Bailon-Ruiz
{{toc}}
8 1 Rafael Bailon-Ruiz
9 18 Rafael Bailon-Ruiz
h2. One-step install
10 1 Rafael Bailon-Ruiz
11 18 Rafael Bailon-Ruiz
Open a terminal and run:
12 1 Rafael Bailon-Ruiz
13 19 Rafael Bailon-Ruiz
*<pre>
14 20 Rafael Bailon-Ruiz
cd ~  # or your directory of choice
15
mkdir cams && cd cams
16 19 Rafael Bailon-Ruiz
wget https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_utils/revisions/master/raw/cams_user_install.sh
17 18 Rafael Bailon-Ruiz
chmod +x cams_user_install.sh
18
./cams_user_install.sh
19 19 Rafael Bailon-Ruiz
</pre>*
20 2 Rafael Bailon-Ruiz
21 18 Rafael Bailon-Ruiz
h2. Advanced install
22 2 Rafael Bailon-Ruiz
23
h3. System requirements
24 1 Rafael Bailon-Ruiz
25 2 Rafael Bailon-Ruiz
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.
26
27
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.
28
29
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.
30
31
The client side application is web-based and should work on a modern web browser. (Only tested with Mozilla Firefox and Safari).
32
33 15 Rafael Bailon-Ruiz
p{border: solid 1px #00008B; padding: 1em; margin: 1em; background: #EEF}. %{color:darkblue; font-weight: bold; font-size: large}Note:% *Check https://redmine.laas.fr/my/account to confirm that your ssh key is correctly set up ! *Otherwise you will need to replace all the <code class="shell">git clone ssh://git@redmine.laas.fr/ . . .</code> urls below by <code class="shell">git://redmine.laas.fr/ . . .</code> but you will not be able to make commits*
34
35 1 Rafael Bailon-Ruiz
h3. Paparazzi framework
36
37
Make sure that curl is installed:
38
<pre><code class="shell">
39 6 Rafael Bailon-Ruiz
apt install curl
40 1 Rafael Bailon-Ruiz
</code></pre>
41
42
h4. System dependencies (for Ubuntu 16.04)
43
44
<pre><code class="shell">
45
add-apt-repository ppa:team-gcc-arm-embedded/ppa
46 6 Rafael Bailon-Ruiz
apt update
47
apt install gcc-arm-linux-gnueabi gcc-arm-none-eabi
48 1 Rafael Bailon-Ruiz
</code></pre>
49
50
<pre><code class="shell">
51
add-apt-repository ppa:paparazzi-uav/ppa
52 6 Rafael Bailon-Ruiz
apt update
53
apt install paparazzi-dev paparazzi-jsbsim
54 1 Rafael Bailon-Ruiz
</code></pre>
55
56
h4. System dependencies (for Ubuntu 18.04)
57
58
<pre><code class="shell">
59 6 Rafael Bailon-Ruiz
apt install gcc-arm-none-eabi
60 1 Rafael Bailon-Ruiz
</code></pre>
61
62
<pre><code class="shell">
63 6 Rafael Bailon-Ruiz
add-apt-repository ppa:paparazzi-uav/ppa
64
apt update
65 1 Rafael Bailon-Ruiz
apt install paparazzi-dev paparazzi-jsbsim
66
</code></pre>
67
68
h4. Repository
69 11 Rafael Bailon-Ruiz
<pre><code class="shell">
70 1 Rafael Bailon-Ruiz
git clone -b laas_wip ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/paparazzi.git paparazzi
71
cd paparazzi
72
make
73
</code></pre>
74 2 Rafael Bailon-Ruiz
75 18 Rafael Bailon-Ruiz
CAMS 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.
76 1 Rafael Bailon-Ruiz
77
<pre><code class="shell">
78
export PAPARAZZI_HOME="paparazzi_path"
79
export PAPARAZZI_SRC="paparazzi_path"
80
</code></pre>
81 2 Rafael Bailon-Ruiz
82 1 Rafael Bailon-Ruiz
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.
83 2 Rafael Bailon-Ruiz
84 1 Rafael Bailon-Ruiz
h3. CAMS
85
86
Install pip3 and update it:
87 6 Rafael Bailon-Ruiz
<pre><code class="shell">
88 1 Rafael Bailon-Ruiz
apt install python3-pip
89
pip3 install --user --upgrade pip
90
</code></pre>
91
92
If you want to update it for all users:
93
<pre><code class="shell">
94
pip3 install --upgrade pip
95
</code></pre>
96 12 Rafael Bailon-Ruiz
97 1 Rafael Bailon-Ruiz
Clone and install the core packages (in developer mode with the -e pip3 option):
98
99
"nephelae_base":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_base.
100 14 Rafael Bailon-Ruiz
<pre><code class="shell">
101 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_base.git nephelae_base
102
cd nephelae_base
103
pip3 install --user -e .
104
</code></pre>
105
106
"nephelae_mesonh":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_mesonh.
107 14 Rafael Bailon-Ruiz
<pre><code class="shell">
108 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_mesonh.git nephelae_mesonh
109
cd nephelae_mesonh
110
pip3 install --user -e .
111
</code></pre>
112
113
"nephelae_paparazzi":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_paparazzi.
114 14 Rafael Bailon-Ruiz
<pre><code class="shell">
115 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_paparazzi.git nephelae_paparazzi
116
cd nephelae_paparazzi
117
pip3 install --user -e .
118
</code></pre>
119 10 Rafael Bailon-Ruiz
120
"nephelae_planner":https://redmine.laas.fr/projects/nephelae-planner/repository/nephelae_planner.
121 14 Rafael Bailon-Ruiz
<pre><code class="shell">
122 10 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_planner.git nephelae_planner
123
cd nephelae_planner
124
pip3 install --user -e .
125
</code></pre>
126 1 Rafael Bailon-Ruiz
127
Make sure that redis is installed:
128 6 Rafael Bailon-Ruiz
<pre><code class="shell">
129 1 Rafael Bailon-Ruiz
apt install redis-server
130
</code></pre>
131
132
Clone and install the "nephelae_gui":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_gui package in developer mode:
133 14 Rafael Bailon-Ruiz
<pre><code class="shell">
134 1 Rafael Bailon-Ruiz
git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_gui.git nephelae_gui
135 17 Rafael Bailon-Ruiz
cd nephelae_gui
136 1 Rafael Bailon-Ruiz
make install
137
</code></pre>
138
139
To check the installation, launch the server:
140
141
<pre><code class="shell">
142
make demo
143 17 Rafael Bailon-Ruiz
</code></pre>
144
145 21 Rafael Bailon-Ruiz
This will (hopefully) start the CAMS GUI server.
146 2 Rafael Bailon-Ruiz
147 1 Rafael Bailon-Ruiz
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/.