Développement sous Linux
Cette page explique comment compiler GIMX depuis un terminal Linux.
Contents
Installer les paquets de développement
Sous Ubuntu 14.04 :
sudo apt-get install git g++ libwxgtk2.8-dev libbluetooth-dev libxml2-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-utils libmhash-dev libcurl4-gnutls-dev libxi-dev libx11-dev
Sous Ubuntu 16.04 :
sudo apt-get install git g++ libwxgtk3.0-dev libbluetooth-dev libxml2-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-utils libmhash-dev libcurl4-gnutls-dev libxi-dev libx11-dev
Sous Raspbian Jessie :
sudo apt-get install git g++ libwxgtk2.8-dev libbluetooth-dev libxml2-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-utils libmhash-dev libcurl4-gnutls-dev libxi-dev libx11-dev
Sous Fedora :
yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed)
Télécharger les sources de GIMX
git clone -b master --single-branch --depth 1 https://github.com/matlo/GIMX.git
Compiler
cd GIMX
make -j 2
Remplacer "2" avec le nombre de cores du CPU.
Installer
sudo make install
Positionner le setuid
Certains binaires nécessitent les privilèges root.
sudo chmod u+s /usr/bin/gimx /usr/bin/sixaddr /usr/bin/bdaddr /usr/bin/hcirevision
Régler les permissions sur les périphériques d'entrée
Une manière de donner les droits en lecture à GIMX est de créer un groupe particulier, remplacer le groupe de /dev/input/event* par ce groupe, et enfin rendre les binaires de gimx setgid pour ce groupe.
sudo su
groupadd -f input
echo "KERNEL==\"event*\", NAME=\"input/%k\", MODE:=\"660\", GROUP=\"input\"" > /etc/udev/rules.d/99-gimx-input.rules
echo "KERNEL==\"js*\", NAME=\"input/%k\", MODE:=\"664\", GROUP=\"input\"" >> /etc/udev/rules.d/99-gimx-input.rules
chgrp -f input /dev/input/event* /dev/input/js*
chmod -f g+rw /dev/input/event* /dev/input/js*
chgrp input /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-launcher
chmod g+s /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-launcher
exit