BuildInstructions

thjaeger edited this page Sep 8, 2014 · 2 revisions

Easystroke is written in C++ and uses gtkmm for its GUI, but it also depends on the availability of several X11 extensions (Xtst, Xrandr and Xinput) and on the boost::serialization library. Installation of the libraries is distribution-specific. Please feel free to add instructions for your distro of choice.

Debian/Ubuntu

sudo apt-get install g++ libboost-serialization-dev libgtkmm-3.0-dev libxtst-dev libdbus-glib-1-dev intltool xserver-xorg-dev

NOTE: Easystroke 5.x and below need libgtkmm-2.4-dev to build, not 3.0.

Fedora

yum install gcc-c++ gtkmm24-devel dbus-glib-devel boost-devel libXtst-devel intltool

NOTE: You might have to install 'xorg-x11-server-devel' for easystroke to compile probably (I had to).

OpenSUSE

zypper in make gcc gcc-c++ gtkmm2-devel glib2-devel dbus-1-glib-devel boost-devel intltool

NOTE: You might have to install 'xorg-x11-server-sdk' to successfully build on 12.X.

Pardus

pisi it make gcc  gtkmm boost-devel intltool

For Pardus, you also have to add -lXi to the LIBS row in the Makefile in order to get the app to compile.

Releases

Sourceforge download page

Development Tree

Most users will probably want to use a released version, so they can skip this section. However, there are a few reasons why someone would use the latest development version and you are absolutely encouraged to do so.

  • You want to get a sneak preview of the awesome features that are planned for the next release.
  • You want to help me out by trying to catch bugs before they make it into a release. This is greatly appreciated.
  • You want to send me a patch.

Please always keep a backup of your .easystroke configuration directory, as the file format is often unstable during development and it is usually not possible to go back to the stable release once the configuration has been saved in a newer file format. Also note that some advanced features are only available if easystroke is started with the -e command line option.z

Easystroke uses git for revision control. To fetch the development tree for the first time, type

git clone git://github.com/thjaeger/easystroke.git

which will create a subdirectory 'easystroke' containing the sources. You can update to the latest tree anytime by changing into that directory and typing 'git pull'.

Now we're ready to build the program. Change into the easystroke directory and type 'make -j2'. This will create an executable file that you can either run directly or copy into your $PATH (easystroke does not require additional files to be installed), but of course you can also use 'make install' to install the program to /usr/local/bin. You can also create a small manpage using help2man by typing 'make man'.