Read Me
<?xml version="1.0" ?>
<!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">
<head>
<title></title>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
<link rev="made" href="mailto:root@localhost" />
</head>
<body>
<ul id="index">
<li><a href="#DESCRIPTION">DESCRIPTION</a></li>
<li><a href="#DEPENDENCIES">DEPENDENCIES</a></li>
<li><a href="#INSTALLATION">INSTALLATION</a></li>
<li><a href="#BUILD-OPTIONS">BUILD OPTIONS</a></li>
<li><a href="#KNOWN-BUGS">KNOWN BUGS</a></li>
<li><a href="#AUTHOR">AUTHOR</a></li>
</ul>
<p>README for package ddc</p>
<p>Last updated for ddc v2.2.0</p>
<h1 id="DESCRIPTION">DESCRIPTION</h1>
<p>The ddc package contains core C++ utilities for the DWDS/Dialing Concordance document indexing system.</p>
<p>The DDC-2.x branch is maintained in SVN under:</p>
<pre><code> svn+ssh://svn.code.sf.net/p/ddc-concordance/code/ddc/
https://svn.code.sf.net/p/ddc-concordance/code/ddc/
svn://svn.code.sf.net/p/ddc-concordance/code/ddc/</code></pre>
<h1 id="DEPENDENCIES">DEPENDENCIES</h1>
<dl>
<dt id="ddc-morph-v2.0.0">ddc-morph >= v2.0.0</dt>
<dd>
<p>Morphology data.</p>
<p>In order to use most of the runtime utilities, you will also need a set of morphology data files available in the ddc-morph package, which should be available wherever you downloaded these sources.</p>
<p>You should build (and optionally install) this package <b>BEFORE</b> attempting to build ddc-morph.</p>
<p>The ddc-morph sources are maintained in SVN under:</p>
<pre><code> https://ddc-concordance.svn.sourceforge.net/svnroot/ddc-morph</code></pre>
</dd>
<dt id="libpcre-libpcrecpp">libpcre, libpcrecpp</dt>
<dd>
<p>Perl-compatibile regular expression C library and C++ wrappers.</p>
<p>URL: http://www.pcre.org/</p>
<p>Tested version(s): 8.02, 8.39-3</p>
</dd>
<dt id="libcurl-optional">libcurl (optional)</dt>
<dd>
<p>If available, libcurl can be used for accessing external HTTP-based term expanders from within a running DDC process. DDC should still compile and run even if libcurl is unavailable, but e.g. external HTTP-based term expanders will be unuseable.</p>
<p>URL: http://curl.haxx.se/</p>
<p>Tested version(s): 7.21.0, 7.38.0, 7.52.1</p>
</dd>
<dt id="GNU-bison-optional">GNU bison (optional)</dt>
<dd>
<p>Tested version(s): 2.4.1, 3.0.2, 3.0.4</p>
<p>If you get errors compiling src/ConcordLib/yyQParser.o, try re-extracting the source archive and call</p>
<pre><code> $ touch src/ConcordLib/yyQParser.cpp src/ConcordLib/yyQParser.h</code></pre>
<p>before re-compiling.</p>
</dd>
<dt id="GNU-flex-optional">GNU flex (optional)</dt>
<dd>
<p>Tested version(s) 2.5.35, 2.5.39, 2.6.1</p>
<p>If you get errors compiling src/ConcordLib/yyQLexer.o, try re-extracting the source archive and call</p>
<pre><code> $ touch src/ConcordLib/yyQLexer.cpp src/ConcordLib/yyQLexer.h</code></pre>
<p>before re-compiling.</p>
</dd>
</dl>
<h1 id="INSTALLATION">INSTALLATION</h1>
<p>Issue the following commands to the shell:</p>
<pre><code> cd ddc-X.Y.dx-Z ##-- (or wherever you extracted the ddc distribution)
sh ./configure
make
make install</code></pre>
<p>To build the ddc morph package, then do:</p>
<pre><code> cd ..
cd ddc-morph-X.Y-dx-Z ##-- (or wherever the ddc-morph distribution lives)
sh ./configure
make
make install</code></pre>
<p>Finally, set the (legacy) environment variable RML to the directory into which ddc was installed (by default /usr/local/ddc):</p>
<pre><code> export RML=/usr/local/ddc</code></pre>
<p>... and you ought to be ready to roll. Take a look at the configuration files in $RML/etc/ and the example corpora in Test/ to get started.</p>
<h1 id="BUILD-OPTIONS">BUILD OPTIONS</h1>
<p>The 'configure' script supports the following options, among others:</p>
<dl>
<dt id="prefix-PREFIX">--prefix=PREFIX</dt>
<dd>
<p>Installation prefix (default=/usr/local). This package installs itself to:</p>
<pre><code> PREFIX/ddc ##-- root directory (a.k.a. $RML)
PREFIX/ddc/bin ##-- executable programs & scripts
PREFIX/ddc/etc ##-- runtime configuration files
PREFIX/ddc/include ##-- C++ headers
PREFIX/lib ##-- runtime libtool libraries</code></pre>
<p>Additionally, the package requires a directory PREFIX/ddc/dict containing morphology data, which should be installed by the ddc-morph package (see <a href="#DEPENDENCIES">"DEPENDENCIES"</a>).</p>
</dd>
<dt id="enable-debug">--enable-debug</dt>
<dd>
<p>Enable debugging flags. Only works for GNU C++ compiler.</p>
</dd>
<dt id="enable-hires-clock">--enable-hires-clock</dt>
<dd>
<p>Enable high-resolution clock if available. Requires <code>clock_gettime()</code> function. Enabled by default if <code>--enable-debug</code> was specified, otherwise disabled by default.</p>
</dd>
<dt id="enable-json-deep-context">--enable-json-deep-context</dt>
<dd>
<p>Enable deep encoding of extra-sentential context tokens in JSON output strings. Disabled by default, since it breaks strict backwards-compatibility.</p>
</dd>
<dt id="enable-warnings">--enable-warnings</dt>
<dd>
<p>Enable lots of compiler warnings. Only works for GNU C++ compiler.</p>
</dd>
<dt id="disable-shared">--disable-shared</dt>
<dd>
<p>Disable compilation of shared libraries.</p>
</dd>
<dt id="without-libcurl">--without-libcurl</dt>
<dd>
<p>Force DDC to build without CURL support.</p>
</dd>
<dt id="with-libiconv-prefix-DIR">--with-libiconv-prefix=DIR</dt>
<dd>
<p>Search for libiconv in DIR/include and DIR/lib.</p>
</dd>
<dt id="with-static-buflen-SIZE">--with-static-buflen=SIZE</dt>
<dd>
<p>Size in bytes of large static internal string buffers (default=4096).</p>
</dd>
</dl>
<p>See the output of `./configure --help` for details on additional supported options.</p>
<h1 id="KNOWN-BUGS">KNOWN BUGS</h1>
<p>Many.</p>
<h1 id="AUTHOR">AUTHOR</h1>
<p>Alexey Sokirko wrote DDC.</p>
<p>Bryan Jurish <jurish@bbaw.de> made various improvements and maintains the DDC-2.x branch.</p>
</body>
</html>