Project

General

Profile

Installation » History » Version 24

Rafael Bailon-Ruiz, 2021-10-28 17:54

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 19 Rafael Bailon-Ruiz
wget https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_utils/revisions/master/raw/cams_user_install.sh
16 18 Rafael Bailon-Ruiz
chmod +x cams_user_install.sh
17
./cams_user_install.sh
18 19 Rafael Bailon-Ruiz
</pre>*
19 2 Rafael Bailon-Ruiz
20 18 Rafael Bailon-Ruiz
h2. Advanced install
21 2 Rafael Bailon-Ruiz
22
h3. System requirements
23 1 Rafael Bailon-Ruiz
24 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.
25
26
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.
27
28
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.
29
30
The client side application is web-based and should work on a modern web browser. (Only tested with Mozilla Firefox and Safari).
31
32 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*
33
34 1 Rafael Bailon-Ruiz
h3. Paparazzi framework
35
36
Make sure that curl is installed:
37
<pre><code class="shell">
38 6 Rafael Bailon-Ruiz
apt install curl
39 1 Rafael Bailon-Ruiz
</code></pre>
40
41
h4. System dependencies (for Ubuntu 16.04)
42
43
<pre><code class="shell">
44
add-apt-repository ppa:team-gcc-arm-embedded/ppa
45 6 Rafael Bailon-Ruiz
apt update
46
apt install gcc-arm-linux-gnueabi gcc-arm-none-eabi
47 1 Rafael Bailon-Ruiz
</code></pre>
48
49
<pre><code class="shell">
50
add-apt-repository ppa:paparazzi-uav/ppa
51 6 Rafael Bailon-Ruiz
apt update
52
apt install paparazzi-dev paparazzi-jsbsim
53 1 Rafael Bailon-Ruiz
</code></pre>
54
55
h4. System dependencies (for Ubuntu 18.04)
56
57
<pre><code class="shell">
58 6 Rafael Bailon-Ruiz
apt install gcc-arm-none-eabi
59 1 Rafael Bailon-Ruiz
</code></pre>
60
61
<pre><code class="shell">
62 6 Rafael Bailon-Ruiz
add-apt-repository ppa:paparazzi-uav/ppa
63
apt update
64 1 Rafael Bailon-Ruiz
apt install paparazzi-dev paparazzi-jsbsim
65
</code></pre>
66
67
h4. Repository
68 24 Rafael Bailon-Ruiz
69 11 Rafael Bailon-Ruiz
<pre><code class="shell">
70 23 Rafael Bailon-Ruiz
git clone -b cams ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/paparazzi.git paparazzi
71 1 Rafael Bailon-Ruiz
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/.