Difference between revisions of "Development on Linux/en"
 (Updating to match new version of source page)  | 
				 (Updating to match new version of source page)  | 
				||
| Line 4: | Line 4: | ||
==Install development packages==  | ==Install development packages==  | ||
| − |      sudo apt-get install git g++ libwxgtk2.8-dev libbluetooth  | + |      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  | 
On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed)  | On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed)  | ||
| Line 22: | Line 22: | ||
     sudo make install  |      sudo make install  | ||
| + | |||
| + | ==Set the setuid==  | ||
| + | |||
| + | A few gimx binaries need root priviledges.  | ||
| + | |||
| + |  sudo chmod u+s /usr/bin/gimx /usr/bin/sixaddr /usr/bin/bdaddr /usr/bin/hcirevision  | ||
==Set Input Device Permissions==  | ==Set Input Device Permissions==  | ||
| Line 35: | Line 41: | ||
  chgrp -f input /dev/input/event* /dev/input/js*  |   chgrp -f input /dev/input/event* /dev/input/js*  | ||
| − |   chgrp input /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-  | + |   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-  | + |   chmod g+s /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-launcher  | 
  exit  |   exit  | ||
Revision as of 09:32, 3 September 2014
This wiki explains how to compile GIMX from a Linux terminal.
Contents
Install development packages
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
On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed)
Download GIMX sources
git clone -b master --single-branch --depth 1 https://github.com/matlo/GIMX.git
Compile
cd GIMX make -j 2
Replace "2" with your number of CPU cores.
Install
sudo make install
Set the setuid
A few gimx binaries need root priviledges.
sudo chmod u+s /usr/bin/gimx /usr/bin/sixaddr /usr/bin/bdaddr /usr/bin/hcirevision
Set Input Device Permissions
One way to give read permissions to GIMX is to create a special group, change /dev/input/event* group ownership to that group, and then make the gimx binaries setgid to that group.
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* 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