Skip to content
vigith edited this page Apr 4, 2012 · 3 revisions
I installed range [had to bang my head every other minute] on a VM which had 'minimal fedora (16) installation [kernel 3.1.0])',

These are the few important steps i went through (feel free to mail me <[email protected]> if you don't get it working)

$ yum install perl-ExtUtils-MakeMaker
$ yum install perl-ExtUtils-Embed
$ yum install pcre pcre-devel
$ yum install zlib zlib-devel
$ yum install make
$ yum install flex bison
$ yum install libyaml libyaml-devel
$ yum install sqlite-devel
$ yum install automake
$ yum install libtool
$ yum install apr-util-devel
$ yum install httpd-devel
$ yum install perl-Test-Simple
$ yum -y install perl-libwww-perl

clone from git: https://github.com/ytoolshed/range.git

cd /home/vigith/Yahoo/range/libcrange/source
$ sudo ../scrpits/build

cd /home/vigith/Yahoo/range/mod_ranged/source
$ sudo ../scrpits/build

change Listen to 9999 in /etc/httpd/conf/httpd.conf

Configure /etc/hosts, add "range" as an alias for localhost

(not with the current code: Create directory /home/seco/tools/conf and set permissions so you can write to it)
Create directory /etc/range/ and set permissions so you can write to it

Now to get er etc, we need perl_seco_data_range
cd /home/vigith/Yahoo/range/perl_seco_data_range/source
$ sudo ../scripts/build

$ yum install perl-Test-Simple
$ yum -y install perl-libwww-perl

manually copy /home/vigith/Yahoo/range/perl_seco_data_range/root/usr/bin/er to /usr/bin/er 
[TODO:create a new package]

http server was not getting started.. looks like SE linux issue.. 
installed pollicycoreutils to semanage pollicycoreutils-python
$ yum install pollicycoreutils  # did NO good
$ yum install pollicycoreutils-python
$ semanage port -l|grep http
$ semanage port -a -t http_port_t -p tcp 9999

$ yum -y install mod_perl

(not required, we copy the conf manually anyways)
add "LoadModule ranged_module modules/mod_ranged.so" in /etc/httpd/conf/httpd.conf

libperl was missing.. added the directory name under /etc/ld.so.conf.d/
$ cat /etc/ld.so.conf.d/libperl.conf
/usr/lib/perl5/CORE

$ cp mod_ranged/root/etc/httpd/conf.d/mod_ranged.conf to /etc/httpd/conf.d/

restart apache (see /var/log/messages for apache errors, you will get lot of hints)

after all this, what i was getting was
[vigith@range1 ~]$ er -v 127.0.0.1 -e 'allcluster()'
No nodes specified.
WARN: NO_FUNCTION: allcluster
[vigith@range1 ~]$

edit /usr/local/share/perl5/Seco/Data/Range.pm and change range.ysm to range (or any other name)

if your system is 64 bit, you might have to do
sudo ln -s /usr/lib/libcrange.so.0 /lib64/libcrange.so.0

i banged my head reading the code (and even editing) only to find that, the error was due to a conf file missing @ /etc/range.conf

Once i create the file and added the following entry in /etc/range.conf
loadmodule nodescf
it started working. (between, you can also add entries like "perlmodule LibrangeUtils" etc.. but i don't need it)

eg, 
$ cat /etc/range/test/nodes.cf
NAME
  INCLUDE q(Vigith Maurice)

[vigith@range1 ~]$ er -v 127.0.0.1 -e %test:NAME
"Vigith Maurice"
[vigith@range1 ~]$ 
Clone this wiki locally