Dependencies
4store requires several libraries to work, these include:
Most of these should be provided by your distribution.
CentOS 5
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 expat-devel zlib-devel
Fedora 12
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 224.0.0.251 -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 librasqal0-dev libraptor1-dev libglib2.0-dev ncurses-dev libreadline-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.
Notes
† Ideally Rasqal should be built with ./configure '--enable-query-languages=sparql rdql laqrs' to get support for projected expressions and COUNT(). If you don't have those options you will fail two query tests, but otherwise things will work.
‡ 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.
