**This is an old revision of the document!**

Compilation des sources

Petit Howto expliquant la récupération des sources ainsi que la compilation d'un environnement Calaos sur Ubuntu 14.04.

Dépendances

Calaos a plusieurs dépendances, dont les EFL. Vous devrez donc les installer au préalable. Pour cela nous allons ajouter le PPA EFL qui va nous permettre d'installer simplement l'intégralité des dépendances :

$ sudo add-apt-repository ppa:efl/trunk
$ sudo apt-get update
$ sudo apt-get install build-essential libelementary-dev automake autoconf libtool  libjansson-dev liblua5.1-0-dev autopoint libevas1-engines-x libelementary-bin libusb-1.0 libusb-1.0-0-dev libluajit-5.1 php5 php5-curl gettext

Pour la connection SSH

$ sudo apt-get install libssh-dev

Installation de dependances

* libsigc++

$ wget http://ftp.gnome.org/pub/gnome/sources/libsigc++/2.4/libsigc++-2.4.1.tar.xz
$ tar xf libsigc++-2.4.1.tar.xz
$ cd libsigc++-2.4.1
$ ./configure --prefix=/usr 
$ make
$ sudo make install

* libuv pour la version 3

$ git clone https://github.com/libuv/libuv.git
$ cd libuv
$ sh autogen.sh
$ ./configure
$ make
$ make check
$ sudo make install

Récupération des sources

Il faut au préalable avoir installé git http://git-scm.org/. En effet les sources de calaos sont hebergées sur github : https://github.com/calaos/

$ sudo apt-get install git

se mettre dans un dossier de travail et faire:

$ git clone https://github.com/calaos/calaos_base.git
  

Ça aura l'effet de récupérer les deux modules principaux qui vont nous intéresser dans un premier temps et qui sont calaosserver et calaoshome.

Compilation de calaos_server et calaos_home

Le serveur doit être unique dans une installation et est obligatoire pour lancer des clients (calaos_touchscreen).

On peut compiler le serveur comme ceci:

$ cd calaos_base
$ ./autogen.sh
$ make # -j9 pour accelérer la compilation
$ sudo make install

Création du répertoire pour accueillir les fichiers de configuration xml

$ sudo mkdir /etc/calaos

Note: Pour accélérer la compilation sur un processeur multi-coeur on peut utiliser l'option -jn (avec n=nombre de coeur).

Si tout se passe bien on obtient un binaire calaosserver et calaoshome respectivement dans les répertoires src/bin/calaosserver/ et src/bin/calaoshome
Apres avoir lancé la commande make install, les binaires sont installés dans les répertoires systéme /usr/bin Le thème de calaos_home quand a lui est installé dans le répertoire /usr/share/calaos

Visualiser les erreurs

Pour permettre de visualiser les erreurs, vous pouvez lancer calaosserver et calaoshome avec la commande suivante :

$ EINA_LOG_LEVELS_GLOB="calaos_*:5" calaos_server
$ EINA_LOG_LEVELS_GLOB="calaos_*:5" calaos_home

Installation de la version minimale de gcc et g++

:!: A FAIRE UNIQUEMENT SI LE AUTOGEN.SH/CONFIGURE NE PASSE PAS A CAUSE DU COMPILATEUR

:!: Pour la version 3 de calaos, il faut installer gcc et g++ version 5 pour avoir le support de c++14.

Entrer la commande suivante pour ajouter le ppa:

$ sudo add-apt-repository ppa:ubuntu-toolchain-r/test

Installer gcc 4.8 et g++ 4.8:

$ sudo apt-get update; sudo apt-get install gcc-4.8 g++-4.8

Après l'installation, entrer les commandes les unes après les autres pour utiliser gcc 4.8 à la place de l'ancienne version.

$ sudo update-alternatives --remove-all gcc 
$ sudo update-alternatives --remove-all g++
$ sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.8 20 (inutile dans certains cas)
$ sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.8 20 (inutile dans certains cas)
$ sudo update-alternatives --config gcc
$ sudo update-alternatives --config g++

L'installation est terminée, pour vérifier la version, entrer :

$ gcc --version