4store requires several libraries to work, these include:
- raptor (note that 4store 1.0.x requires raptor 1, and rasqal 0.9.21 or earlier)
- pcre ‡
Most of these should be provided by your distribution.
On CentOS and similar operating systems you can install all the dependencies (except raptor and rasqal) with:
yum install gcc glib2-devel libxml2-devel pcre-devel avahi avahi-devel \ avahi-glib-devel readline-devel ncurses-devel termcap libtermcap-devel libtool expat-devel zlib-devel
Mostly as CentOS 5 above, but by default mDNS is firewalled, so the following is needed in /etc/sysconfig/iptables:
-A INPUT -m state --state NEW -m udp -p udp --dport 5353 -d 188.8.131.52 -j ACCEPT
Thanks to Thomasz Chodakowski for finding the iptables line required.
Mac OS X
On Mac OSX, using fink you can do:
apt-get install autoconf, automake, expat-shlibs, gettext-tools, glib-shlibs, \ glib2-dev, glib2-shlibs, libtool-shlibs, m4, make, pcre, pcre-bin, pcre-shlibs, pkgconfig
But see the FAQ entry if you get problems with GLib duplicate symbols.
Debian / Ubuntu
On Debian/Ubuntu? you can:
Install some APT packages, instructions at http://blog.dbtune.org/post/2009/08/14/4Store-stuff, or
apt-get install build-essential libpcre3-dev librasqal2-dev libtool libraptor1-dev libglib2.0-dev ncurses-dev libreadline-dev
Older version of debian may only have librasqal0-dev.
Which should install pretty much everything (skip the raptor + rasqal section below).
Raptor and Rasqal
Once you have done this, download and install raptor and rasqal from the URLs above.
‡ if you build PCRE from source, make sure you enable unicode support with ./configure --enable-unicode-properties. If you don't have unicode support built in then the regex() FILTER function won't work.