Installation » History » Version 19
Rafael Bailon-Ruiz, 2020-12-08 17:29
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 | cd ~ && mkdir cams |
||
15 | 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 | 11 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
69 | 1 | Rafael Bailon-Ruiz | git clone -b laas_wip ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/paparazzi.git paparazzi |
70 | cd paparazzi |
||
71 | make |
||
72 | </code></pre> |
||
73 | 2 | Rafael Bailon-Ruiz | |
74 | 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. |
75 | 1 | Rafael Bailon-Ruiz | |
76 | <pre><code class="shell"> |
||
77 | export PAPARAZZI_HOME="paparazzi_path" |
||
78 | export PAPARAZZI_SRC="paparazzi_path" |
||
79 | </code></pre> |
||
80 | 2 | Rafael Bailon-Ruiz | |
81 | 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. |
82 | 2 | Rafael Bailon-Ruiz | |
83 | 1 | Rafael Bailon-Ruiz | h3. CAMS |
84 | |||
85 | Install pip3 and update it: |
||
86 | 6 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
87 | 1 | Rafael Bailon-Ruiz | apt install python3-pip |
88 | pip3 install --user --upgrade pip |
||
89 | </code></pre> |
||
90 | |||
91 | If you want to update it for all users: |
||
92 | <pre><code class="shell"> |
||
93 | pip3 install --upgrade pip |
||
94 | </code></pre> |
||
95 | 12 | Rafael Bailon-Ruiz | |
96 | 1 | Rafael Bailon-Ruiz | Clone and install the core packages (in developer mode with the -e pip3 option): |
97 | |||
98 | "nephelae_base":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_base. |
||
99 | 14 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
100 | 1 | Rafael Bailon-Ruiz | git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_base.git nephelae_base |
101 | cd nephelae_base |
||
102 | pip3 install --user -e . |
||
103 | </code></pre> |
||
104 | |||
105 | "nephelae_mesonh":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_mesonh. |
||
106 | 14 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
107 | 1 | Rafael Bailon-Ruiz | git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_mesonh.git nephelae_mesonh |
108 | cd nephelae_mesonh |
||
109 | pip3 install --user -e . |
||
110 | </code></pre> |
||
111 | |||
112 | "nephelae_paparazzi":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_paparazzi. |
||
113 | 14 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
114 | 1 | Rafael Bailon-Ruiz | git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_paparazzi.git nephelae_paparazzi |
115 | cd nephelae_paparazzi |
||
116 | pip3 install --user -e . |
||
117 | </code></pre> |
||
118 | 10 | Rafael Bailon-Ruiz | |
119 | "nephelae_planner":https://redmine.laas.fr/projects/nephelae-planner/repository/nephelae_planner. |
||
120 | 14 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
121 | 10 | Rafael Bailon-Ruiz | git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_planner.git nephelae_planner |
122 | cd nephelae_planner |
||
123 | pip3 install --user -e . |
||
124 | </code></pre> |
||
125 | 1 | Rafael Bailon-Ruiz | |
126 | Make sure that redis is installed: |
||
127 | 6 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
128 | 1 | Rafael Bailon-Ruiz | apt install redis-server |
129 | </code></pre> |
||
130 | |||
131 | Clone and install the "nephelae_gui":https://redmine.laas.fr/projects/nephelae-devel/repository/nephelae_gui package in developer mode: |
||
132 | 14 | Rafael Bailon-Ruiz | <pre><code class="shell"> |
133 | 1 | Rafael Bailon-Ruiz | git clone ssh://git@redmine.laas.fr/laas/users/simon/nephelae/nephelae-devel/nephelae_gui.git nephelae_gui |
134 | 17 | Rafael Bailon-Ruiz | cd nephelae_gui |
135 | 1 | Rafael Bailon-Ruiz | make install |
136 | </code></pre> |
||
137 | |||
138 | To check the installation, launch the server: |
||
139 | |||
140 | <pre><code class="shell"> |
||
141 | make demo |
||
142 | 17 | Rafael Bailon-Ruiz | </code></pre> |
143 | |||
144 | 1 | Rafael Bailon-Ruiz | p{border: solid 1px #FF8C00; padding: 1em; margin: 1em; background: #FEE}. %{color:darkorange; font-weight: bold; font-size: large}Warning:% (16/11/2020) <code class="shell">make demo</code> does not work ! |
145 | |||
146 | This will (hopefully) start the replay of a UAV flight. |
||
147 | 2 | Rafael Bailon-Ruiz | |
148 | 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/. |