-
Notifications
You must be signed in to change notification settings - Fork 7
Compiling and installing Tinia on Red Hat Enterprise Linux 6
This document describes how to set up Tinia on a standard RHEL 6 installation. The walkthrough requires access to the yum install command.
First we need to install some packages provided by yum, namely the group package "Development Tools" and the packages
- qt-devel
- git
- cmake
- libXmu-devel
- libXi-devel
- freeglut-devel
- boost-devel
- libxml2-devel
- apr-devel
- httpd-devel
To install these packages, issue the following two commands:
yum groupinstall "Development Tools"
yum install qt-devel git cmake libXmu-devel libXi-devel freeglut-devel boost-devel libxml2-devel apr-devel httpd-devel
You need to manually install and compile GLEW (The OpenGL Extension Wrangler Library). You can download the newest version (1.10.0) of GLEW here.
The following commands compiles and install GLEW to a folder of your choosing (e.g. /home/<username>/local
):
tar xvf <path to downloaded glew-1.10.0.tgz>
GLEW_DEST=<install path for GLEW> make install
You need to manually install GLM (OpenGL Mathematics). You can download GLM directly here. GLM is a headers only library, so no compiling is needed. To install simply issue
unzip <path to downloaded glm-0.9.4.6.zip>
cp -r glm/glm <install path for GLEW>/include/
You can get Tinia directly from http://github.com/sintefmath/tinia or you can clone the repository yourself using git:
git clone http://github.com/sintefmath/tinia.git
To compile Tinia, you should first make a separate build catalog, then issue cmake from that catalog, like this (<install path for tinia>
and <install path for GLEW>
can be the same):
cd tinia
mkdir build
cmake .. -DCMAKE_PREFIX_PATH=<install path for GLEW> -DCMAKE_INSTALL_PREFIX=<install path for tinia>
make -j9 install
To test if the installation was successful, you can run the command
<install path for tinia>/bin/simple_qt_job
(Note that you need to have <install path for tinia>/lib
(as well as the library directory for glew, which should be <install path for glew>/lib64
in LD_LIBRARY_PATH
so you might need to start it with
LD_LIBRARY_PATH="<install path for tinia>/lib:<install path for glew>/lib64" <install path for tinia>/bin/simple_qt_job
If you lack root access, you need to make a local httpd-configuration file with write permissions for your desired user. First you must copy over the httpd folder to a local folder:
cp -r /etc/httpd ./
Then we need to fix some symlinks:
rm httpd/logs httpd/modules httpd/run
then create them again (some just as empty folders):
mkdir httpd/logs httpd/run
ln -s /etc/modules httpd/modules
You then need to edit the httpd/conf/httpd.conf
to match your new location. You want to change the ServerRoot
property to the location of your new httpd folder. You will also need to change the listen port to 8080, so set Listen
to 8080:
ServerRoot <some dir>/httpd
Listen 8080
In the httpd.conf file we also need to configure mod_trell. At the bottom of httpd.conf
insert
LoadModule trell_module <install path for Tinia>/var/trell/module/libmod_tinia_trell.so
TrellMasterId "trell_master"
TrellMasterExe "<install path for Tinia>/var/trell/bin/tinia_trell_master"
TrellAppRoot "<install path for Tinia>/var/trell/apps"
TrellSchemaRoot "<install path for Tinia>/var/trell/schemas"
TrellJobWWWRoot "<install path for Tinia>/var/trell/js"
LogLevel notice
<Location /trell/mod>
SetHandler trell
</Location>
<Location /trell/master>
SetHandler trell
</Location>
<Location /trell/job>
SetHandler trell
</Location>
Alias /trell/static <install path for Tinia>/var/trell/static
<Directory "<install path for Tinia>/var/trell/static">
Options -Indexes
AllowOverride None
Order allow,deny
Allow from all
</Directory>
To start the server, issue the command:
LD_LIBRARY_PATH=${LD_LIBRARY_PATH}:<install path for Tinia>/lib:<install path for GLEW>/lib64 httpd -d <path to new httpd folder>
If this worked, you should be able to point your browser to localhost:8080/trell/static.