Skip to content
jarrettchisholm edited this page Jul 17, 2014 · 24 revisions

The simplest way to compile Glr is to use the setup.py setup script.

Note: The setup.py script only works for Linux 64-bit and Windows 32-bit at the moment. For other operating systems / architectures, please see the Manual Building instructions.

Prerequisites

In order to download and compile the source code, you will need:

On Linux, you will also require:

  • libpthread
  • build-essential
  • libgtk2.0-dev (for CEF3)
  • libgtkglext1-dev (for CEF3)

You should be able to install all of these libraries through your package manager.

Windows

These instructions assume you are using the Git Bash terminal. You can, however, use a more visual tool for cloning if you wish.

Furthermore, for compilation, you will need to use the Developer Command Prompt for VS2013.

Get the Code

Open up a terminal and navigate to the directory you want to clone the Glr source code to, then run:

git clone https://github.com/jarrettchisholm/glr.git

Next, you need to initialize and update the submodules.

First, enter the glr directory you cloned the repository to (by default, the directory will be glr). Once done, run:

git submodule init
git submodule update
git submodule foreach git pull origin master

You are now ready to build.

Building

Open up a terminal and navigate to the directory where you cloned Glr.

Setup the dependencies by running:

python setup.py release

Note: debug setup is not yet implemented. Please see issue #30.

Once completed, compile Glr by running:

scons

Common Problems

Missing libudev.so.0 while compiling on Linux.

Unfortunately, newer linux distributions have replaced libudev.so.0 with libudev.so.1. This poses a problem for CEF3.

A quick (and dirty) way to 'fix' the problem is to create a symbolic link to libudev.so.1 with the name libudev.so.0.

64 bit:

sudo ln -sf /lib/x86_64-linux-gnu/libudev.so.1 /lib/x86_64-linux-gnu/libudev.so.0

32 bit:

sudo ln -sf /lib/i386-linux-gnu/libudev.so.1 /lib/i386-linux-gnu/libudev.so.0

A better way would probably be to create local symbolic links. Unfortunately, I couldn't figure out where to put the libudev.so.0 symbolic link locally.