mirror of
https://github.com/cookiengineer/audacity
synced 2025-05-05 14:18:53 +02:00
229 lines
7.6 KiB
HTML
229 lines
7.6 KiB
HTML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
|
|
<head>
|
|
<title>Rasqal RDF Query Library - Building and Installing from Source</title>
|
|
</head>
|
|
<body>
|
|
|
|
<h1>Rasqal RDF Query Library - Building and Installing from Source</h1>
|
|
|
|
<h2>0. Prerequisites</h2>
|
|
|
|
<p>Rasqal requires the
|
|
<a href="http://librdf.org/raptor/">Raptor RDF parser toolkit</a>
|
|
version 1.4.17 or later for parsing RDF, retrieving WWW content and
|
|
other utility classes and libraries. It can also use
|
|
<a href="http://librdf.org/">Redland</a>
|
|
as an alternate triple store and enabled by
|
|
<tt>--with-triples-source=redland</tt> as described below
|
|
however Raptor is also required.</p>
|
|
|
|
|
|
<h2>1. Getting the sources</h2>
|
|
|
|
<h2>1.1 Getting the sources from releases</h2>
|
|
|
|
<p>The sources are available from
|
|
<a href="http://download.librdf.org/source/">http://download.librdf.org/source/</a> (master site) and also from the
|
|
<a href="http://sourceforge.net/projects/librdf/">SourceForge site</a>.</p>
|
|
|
|
|
|
<h2>1.2 Getting the sources from Subversion</h2>
|
|
|
|
<p>Building from development sources rather than from a release
|
|
may required some extra development tools. Presently this includes the
|
|
<a href="http://lex.sourceforge.net/">flex scanner generator</a>
|
|
version 2.5.31 or later.</p>
|
|
|
|
<p><strong>NOTE</strong>: Rasqal switched to use
|
|
<a href="http://subversion.tigris.org/">Subversion</a>
|
|
for version control after the 0.9.11 release. If you were
|
|
using CVS, you will need to re-check out the sources.</p>
|
|
|
|
<pre>
|
|
svn checkout http://svn.librdf.org/repository/rasqal/trunk/
|
|
mv trunk rasqal
|
|
cd rasqal
|
|
</pre>
|
|
|
|
<p>At this stage, or after a <tt>svn update</tt> you will
|
|
need to create the automake and autoconf derived files, as described
|
|
below in <a href="#sec-create-configure">Create the configure program</a>
|
|
by using the <code>autogen.sh</code> script.</p>
|
|
|
|
<p>Building Rasqal in this way requires some particular development
|
|
tools not needed when building from snapshot releases - automake and
|
|
autoconf. The <code>autogen.sh</code> script looks for the newest
|
|
versions of the auto* tools and checks that they meet the minimum
|
|
versions.</p>
|
|
|
|
|
|
|
|
<h2>2. Configuring and building</h2>
|
|
|
|
<p>Requirements:
|
|
the <a href="http://librdf.org/raptor/">Raptor RDF parser toolkit</a>
|
|
version 1.4.11 or later
|
|
(plus flex and bison as specified above, when building from Subversion).
|
|
Recommended: <a href="http://www.pcre.org/">PCRE</a> regex library
|
|
or another implementing the POSIX regex API. If neither is
|
|
present some of the tests will fail and the query engine will
|
|
fail to handle regex matches.
|
|
</p>
|
|
|
|
<p>Rasqal is developed and built on x86 GNU/Linux and PPC Apple OSX.
|
|
</p>
|
|
|
|
|
|
<h3><a id="sec-create-configure" name="sec-create-configure"></a>2.1. Create <code>configure</code> program</h3>
|
|
|
|
<p>If there is no <tt>configure</tt> program, you can create it
|
|
using the <tt>autogen.sh</tt> script, as long as you have the
|
|
<a href="http://www.gnu.org/software/automake/automake.html">automake</a> and
|
|
<a href="http://www.gnu.org/software/autoconf/autoconf.html">autoconf</a>
|
|
tools. This is done by:</p>
|
|
<pre>
|
|
./autogen.sh
|
|
</pre>
|
|
|
|
<p>and you can also pass along arguments intended for configure (see
|
|
below for what these are):</p>
|
|
<pre>
|
|
./autogen.sh --prefix=/usr/local/somewhere
|
|
</pre>
|
|
|
|
<blockquote>
|
|
<p>On OSX you may have to explicitly set the <code>LIBTOOLIZE</code>
|
|
variable for the <code>libtoolize</code> utility since on
|
|
OSX <code>libtoolize</code> is a different program:</p>
|
|
<pre>
|
|
LIBTOOLIZE=glibtoolize ./autogen.sh
|
|
</pre>
|
|
</blockquote>
|
|
|
|
<p>Alternatively you can run them by hand with:</p>
|
|
<pre>
|
|
aclocal; autoheader; automake --add-missing; autoconf
|
|
</pre>
|
|
|
|
<p>The automake and autoconf tools have many different versions and
|
|
at present development is being done with automake 1.8.3 (minimum
|
|
version 1.7), autoconf 2.59 (minimum version 2.54) and libtool 1.5.4
|
|
(minimum version 1.4). These are only needed when compiling from Subversion
|
|
sources. autogen.sh enforces the requirements. In future
|
|
development will move to require automake 1.8, autoconf 2.58 and
|
|
libtool 1.5.</p>
|
|
|
|
<p>Rasqal also requires
|
|
<a href="http://lex.sourceforge.net/">flex</a> version 2.5.31 or newer
|
|
(2.5.4 will not work) and
|
|
<a href="http://www.gnu.org/software/bison/bison.html">GNU Bison</a>
|
|
to build lexers and parsers.
|
|
These are only required when building from Subversion.</p>
|
|
|
|
|
|
<h3>2.2 Options for <tt>configure</tt></h3>
|
|
|
|
<p>Rasqal also supports the following extra configure options:</p>
|
|
|
|
<dl>
|
|
<dt><tt>--enable-query-languages=LANGUAGES</tt><br /></dt>
|
|
<dd><p>Pick the RDF query languages to build from the list:<br />
|
|
<code>rdql sparql laqrs</code><br />
|
|
The default when this option is omitted is to enable all query languages
|
|
except the experimental one, laqrs.
|
|
</p>
|
|
</dd>
|
|
|
|
<dt><tt>--with-memory-signing</tt><br /></dt>
|
|
<dd><p>Enable signing of memory allocations so that when memory is
|
|
allocated with malloc() and released free(), a check is made that the
|
|
memory was allocated in the same library.</p></dd>
|
|
|
|
<dt><tt>--with-regex-library=NAME</tt><br /></dt>
|
|
<dd><p>Pick a regex library to use - either <tt>pcre</tt> (default)
|
|
for the <a href="http://www.pcre.org/">PCRE</a>
|
|
or <tt>posix</tt> a POSIX regex implementation in the C library
|
|
</p>
|
|
</dd>
|
|
|
|
<dt><tt>--with-triples-source=NAME</tt><br /></dt>
|
|
<dd><p>Pick a triples source library to use - either <tt>raptor</tt>
|
|
(default, and always available) or <tt>redland</tt> to use
|
|
<a href="http://librdf.org/">Redland</a>. Raptor
|
|
creates a simple in-store list of triples on parsing each time whereas
|
|
Redland makes a much more efficient indexed in-memory store. See
|
|
also <tt>--with-redland-config</tt>.</p>
|
|
</dd>
|
|
|
|
<dt><tt>--with-pcre-config=NAME</tt><br /></dt>
|
|
<dd><p>Set the path to the <a href="http://www.pcre.org/">PCRE</a> pcre-config program</p></dd>
|
|
<dt><code>--with-raptor=</code> <code>system</code> or <code>internal</code><br /></dt>
|
|
<dd><p>
|
|
This option tells Rasqal to use either the system installed version
|
|
of raptor or a version in the sibling directory of ../raptor
|
|
If the option is omittted, Rasqal will guess and choose either the
|
|
system one, if new enough or the internal one if present. If
|
|
<code>--with-raptor=system</code> is used and Rasqal discovers that
|
|
the system raptor is too old, a warning will be given but the
|
|
configuration will continue. </p></dd>
|
|
|
|
<dt><tt>--with-redland-config=NAME</tt><br /></dt>
|
|
<dd><p>Set the path to the <a href="http://librdf.org/">Redland</a> redland-config program</p></dd>
|
|
|
|
</dl>
|
|
|
|
|
|
<h3>2.3 Configuring</h3>
|
|
|
|
<p>If everything is in the default place, do:</p>
|
|
<pre>
|
|
./configure
|
|
</pre>
|
|
|
|
<p>The most common configuration you will be doing something like this:</p>
|
|
<pre>
|
|
./configure --prefix=/usr
|
|
</pre>
|
|
|
|
|
|
<h3>2.4 Compiling</h3>
|
|
|
|
<p>Compile the library with;</p>
|
|
<pre>
|
|
make
|
|
</pre>
|
|
<p>Note: GNU make is probably required so it may be gmake or gnumake
|
|
on your system</p>
|
|
|
|
|
|
<h3>2.5 Testing</h3>
|
|
|
|
<p>You can build and run the built-in test suite with:</p>
|
|
<pre>
|
|
make check
|
|
</pre>
|
|
|
|
<p>which should emit lots of exciting test messages to the screen but
|
|
conclude with something like:<br />
|
|
<tt>All </tt><em>n</em><tt> tests passed</tt><br />
|
|
if everything works correctly. There might be some regex
|
|
tests that fail if no POSIX regex library was available when
|
|
raptor was compiled</p>
|
|
|
|
|
|
<h2>3. Using the library</h2>
|
|
|
|
<p>The public Rasqal API is described in the
|
|
<a href="librasqal.html">librasqal.3</a> UNIX manual/web page
|
|
</p>
|
|
|
|
|
|
<hr />
|
|
|
|
<p>Copyright (C) 2003-2008 <a href="http://www.dajobe.org/">Dave Beckett</a><br />Copyright (C) 2003-2005 <a href="http://www.bristol.ac.uk/">University of Bristol</a></p>
|
|
|
|
</body>
|
|
</html>
|