RedlandDave Beckett |
|||||
|
Hosted by
since 2005. Redland librdfDemonstrationsData |
Redland librdf RDF API Library - Building from CVS1. IntroductionSo you want the latest bits and pieces? That means running from CVS. There are several redland packages but it's easiest if you just get two - redland and redland-bindings, since redland includes raptor and rasqal. 2. Checking out the Redland SourcesFollow the instructions to get CVS redland and bindings checked out, given in: http://librdf.org/INSTALL.html and http://librdf.org/bindings/INSTALL.html and you'll end up with two directories, At this point, in order to match the way I set this up originally, you'll now need to make a symlink from redland to librdf: $ ln -s redland librdf 3. SetupNow it is a matter of setting up CVS. For this you need to run the autotools on the cvs tree. However, before doing that you need to have the right set of utility programs and libraries, so that's the first step and it's somewhat system specific. 3.1 Debian SetupStarting from the redland Debian Build Dependencies (which are for building from releases, not from CVS) the core set of packages needed. For simplicity, I've removed lower level versions from this list, but if you are reading this document some time after this publication date, there may be newer version number alternatives:
Also needed are reasonably new versions of automake and autoconf. I
always use the latest there is, which is right now, automake 1.9.5
(1.7 min) and autoconf 2.59 (2.54 min). The install documents above
track the version requirements in more detail and the Finally the various language parsers (such as Turtle in raptor, RDQL and SPARQL in Rasqal) need GNU bison, flex 2.5.31 and swig 1.3.x (1.3.14 minimum) for generating the lexers and parser generators. For actual debian unstable/sid users this is easier since redland's in the archive and all you need is: $ sudo apt-get build-dep redland redland-bindings plus the extras: $ sudo apt-get install bison swig1.3 flex automake-1.9 autoconf2.50 Redland and bindings ship with Ubuntu on CD1 (yay!) and are in Debian. 3.2 Redhat (RPM systems) SetupSomething similar applies to the world of RPMs if you have yum or apt installed although the package names are different:
I had to build flex 2.5.31 separately as the ancient flex on RedHat Fedora Core 3 was of no use. However the rest can be installed with: $ sudo yum install PACKAGES Redland and bindings are in some RPM distributions. 3.3 OSX (w/fink) SetupThere's a similar set of packages for OSX with fink with sigh slightly different names again, something like: autoconf2.5 automake1.8 curl-ssl-dev curl-ssl-shlibs db42 db42-bin db42-shlibs flex-devel libtool14 libtool14-shlibs pkgconfig swig swig-shlibs ... more for languages ... on OSX the $ sudo fink install PACKAGES You can try to get by without fink but you won't have any persistent storage. Perl, python and required headers should already be installed. 3.4 BSDen and Gentoo SetupSorry, I don't know the relevant port-based systems instructions. You can probably work out the right names. For gentoo it is something like: $ sudo emerge PACKAGES The redland and redland-bindings packages are already in BSD freshports and gentoo as of this date. 4. Configuring and building RedlandNow it's time to try the $ cd redland $ ./autogen.sh --with-raptor=internal --with-rasqal=internal --with-prefix=/usr and see what happens. The --with options ensure redland's always built with the CVS versions of everything rather than any system version. You can of course add more options; see the redland install document pointed to above. $ make $ make check which may work, this being development versions in CVS, there are no guarantees. If brave and you want it globally: $ sudo make install 5. Configuring and building Redland bindings$ cd ../bindings This involves picking a language, but it's optional, so either don't: $ ./autogen.sh --with-redland=internal or do: $ ./autogen.sh --with-redland=internal --with-perl --with-python=/usr/bin/python2.5 $ make $ make check Same caveats as above; things may break. If you didn't do the Then to install the bindings in their natural places: $ sudo make install 6. What To Do When Something Gets Fixed In CVSUsually: $ cd redland $ cvs up -APd $ make then maybe: sudo make install $ cd ../bindings $ cvs up -APd $ make then maybe: sudo make install However now and then you'll need to re-run the autogen.sh scripts
such as when new directories are added or removed from CVS or files
are renamed, moved or deleted. This can usually be seen when make
stops working with some error about missing files after a
Additionally if you ever update your autotools, you will likely
need to re-run the 7. Help! This is Too ComplexGrab the nightly tarballs (source) or RPMs then :) Then all the generated files are made for you from the tools I am using. 8. FeedbackPlease get in contact with me with fixes to this document, thanks Last Modified: $Date: 2005/03/22 20:50:10 $ |