Difference between revisions of "Development on Linux/en"

From GIMX
Jump to: navigation, search
(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-dev libglib2.0-dev libxml2-dev libusb-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-utils
+
     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-bluetooth /usr/bin/gimx-serial
+
  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-bluetooth /usr/bin/gimx-serial
+
  chmod g+s /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-launcher
 
   
 
   
 
  exit
 
  exit

Revision as of 10:32, 3 September 2014

Other languages:

This wiki explains how to compile GIMX from a Linux terminal.

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