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 subversion | + | sudo apt-get install subversion g++ libwxgtk2.8-dev libbluetooth-dev libglib2.0-dev libxml2-dev libusb-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-open |
+ | patch and libxi-dev were also required before r1277. | ||
− | On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel | + | On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed) |
==Compile a patched SDL library (not required anymore since r1277)== | ==Compile a patched SDL library (not required anymore since r1277)== | ||
Line 42: | Line 43: | ||
==Set Input Device Permissions (required since r1277)== | ==Set Input Device Permissions (required since r1277)== | ||
− | + | 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. | |
+ | |||
+ | 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 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 | ||
+ | chmod g+s /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-bluetooth /usr/bin/gimx-serial |
Revision as of 08:45, 19 February 2013
This wiki explains how to compile GIMX from a Linux terminal.
Contents
Install development packages
sudo apt-get install subversion g++ libwxgtk2.8-dev libbluetooth-dev libglib2.0-dev libxml2-dev libusb-dev libusb-1.0-0-dev libncursesw5-dev gettext xterm xdg-open
patch and libxi-dev were also required before r1277.
On Fedora: yum -y install wxGTK-devel bluez-libs-devel glib2-devel libxml2-devel libXi-devel libusb-devel (to be completed)
Compile a patched SDL library (not required anymore since r1277)
wget http://www.libsdl.org/release/SDL-1.2.14.tar.gz tar xzvf SDL-1.2.14.tar.gz svn export http://diyps3controller.googlecode.com/svn/trunk/libsdl/patch cd SDL-1.2.14 patch -p1 < ../patch ./configure ; make cd ..
Copy SDL headers and .so (not required anymore since r1277)
mkdir -p libsdl/lib mkdir -p libsdl/include/SDL cp SDL-1.2.14/build/.libs/libSDL.so libsdl/lib cp SDL-1.2.14/include/* libsdl/include/SDL
Download GIMX sources
svn checkout http://diyps3controller.googlecode.com/svn/trunk/GIMX
Compile
cd GIMX make -j 2
Replace "2" with your number of CPU cores.
Install
sudo make install
Set Input Device Permissions (required since r1277)
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.
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 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 chmod g+s /usr/bin/gimx-config /usr/bin/gimx-fpsconfig /usr/bin/gimx-bluetooth /usr/bin/gimx-serial