-<!-- $Id: installation.xml,v 1.12 2003-03-31 20:48:12 adam Exp $ -->
+<!-- $Id: installation.xml,v 1.27 2006-06-30 14:36:12 marc Exp $ -->
<chapter id="installation">
<title>Installation</title>
<para>
Zebra is written in ANSI C and was implemented with portability in mind.
- We primarily use GCC on UNIX and Microsoft Visual C++ on Windows.
+ We primarily use <ulink url="http://gcc.gnu.org/">GCC</ulink> on UNIX and
+ <ulink url="http://msdn.microsoft.com/vstudio/">
+ Microsoft Visual C++</ulink>
+ on Windows.
</para>
<para>
<ulink url="http://www.redhat.com/">Redhat Linux</ulink>,
<ulink url="http://www.gentoo.org/">Gentoo Linux</ulink>,
<ulink url="http://www.suse.com/">SuSE Linux</ulink>,
- <ulink url="http://www.netbsd.org/Ports/cobalt/">NetBSD (Cobalt)</ulink>,
<ulink url="http://www.freebsd.org/">FreeBSD (i386)</ulink>,
<ulink url="http://www.apple.com/macosx/">MAC OSX</ulink>,
- <ulink url="http://wwws.sun.com/software/solaris/">SunOS 5.8 (sparc)</ulink>,
- <ulink url="http://www.microsoft.com/windows2000/">Windows 2000 SP3</ulink>.
+ <ulink url="http://www.sun.com/software/solaris/">SunOS 5.8
+ (sparc)</ulink>,
+ <ulink url="http://www.microsoft.com/windows2000/">Windows 2000</ulink>.
</para>
<para>
(required)</term>
<listitem>
<para>
- Zebra uses YAZ to support Z39.50/SRW. Also the memory management
+ Zebra uses YAZ to support Z39.50/ <ulink url="http://www.loc.gov/standards/sru/srw/">SRW</ulink>. Also the memory management
utilites from YAZ is used by Zebra.
</para>
</listitem>
By default this will install the Zebra executables in
<filename>/usr/local/bin</filename>,
and the standard configuration files in
- <filename>/usr/local/share/idzebra</filename>
+ <filename>/usr/local/share/idzebra-2.0</filename>
You can override this with the <literal>--prefix</literal> option
to configure.
</para>
</sect1>
+
+ <sect1 id="installation.debian"><title>GNU/Debian</title>
+ <sect2 id="installation.debianlinux"><title>GNU/Debian Linux on
+ i686 Platform</title>
+ <para>
+ Index Data provides pre-compiled <literal>GNU/Debian i686
+ Linux</literal> packages at our Debian package archive, both for
+ the <literal>Sarge</literal> and the <literal>Etch</literal> release.
+ </para>
+
+ <para>
+ To install these packages, you need to add two lines to your
+ <literal>/etc/apt/sources.list</literal> configuration file,
+ either the <literal>Sarge</literal> sources found at
+ <screen>
+ deb http://ftp.indexdata.dk/t/debian sarge main
+ deb-src http://ftp.indexdata.dk/t/debian sarge main
+ </screen>
+ or the <literal>Etch</literal> sources from
+ <screen>
+ deb http://ftp.indexdata.dk/t/debian etch main
+ deb-src http://ftp.indexdata.dk/t/debian etch main
+ </screen>
+ After refreshing the package cache with the command
+ <screen>
+ apt-get update
+ </screen>
+ as <literal>root</literal>, the
+ <ulink url="http://indexdata.dk/zebra/">Zebra</ulink> indexer is
+ easily installed issuing
+ <screen>
+ apt-get install idzebra-2.0 idzebra-2.0-doc
+ </screen>
+ </para>
+ </sect2>
+
+ <sect2 id="installation.debianother">
+ <title>Ubuntu/Debian and GNU/Debian on other platforms</title>
+ <para>
+ These <ulink url="http://indexdata.dk/zebra/">Zebra</ulink>
+ packages are specifically compiled for
+ <literal>GNU/Debian Linux</literal> systems. Installation on other
+ <literal>GNU/Debian</literal> systems is possible by
+ re-compilation the Debian way: you need to add only the
+ <literal>deb-src</literal> sources lines to the
+ <literal>/etc/apt/sources.list</literal> configuration file,
+ that is either the <literal>Sarge</literal> sources
+ <screen>
+ deb-src http://ftp.indexdata.dk/t/debian sarge main
+ </screen>
+ or the <literal>Etch</literal> sources
+ <screen>
+ deb-src http://ftp.indexdata.dk/t/debian etch main
+ </screen>
+ After refreshing the package cache with the command
+ <screen>
+ apt-get update
+ apt-get build-dep idzebra-2.0
+ </screen>
+ as <literal>root</literal>, the
+ <ulink url="http://indexdata.dk/zebra/">Zebra</ulink> indexer is
+ recompiled and installed issuing
+ <screen>
+ apt-get source --compile idzebra-2.0
+ </screen>
+ as normal user.
+ The compiled <literal>GNU/Debian</literal> packages can then be
+ installed as <literal>root</literal> issuing
+ <screen>
+ dpkg -i install idzebra-2.0*.deb libidzebra-2.0*.deb
+ </screen>
+ </para>
+ </sect2>
+ </sect1>
+
<sect1 id="installation.win32"><title>WIN32</title>
<para>The easiest way to install Zebra on Windows is by downloading
an installer from
<literal>EXPAT_DIR</literal></term>
<listitem><para>
If <literal>HAVE_EXPAT</literal> is set to 1, Zebra is compiled
- with Expat support. In this configuration, set
- <literal>ZEBRA_DIR</literal> to the Expat source directory.
+ with <ulink url="http://expat.sourceforge.net/">Expat</ulink> support. In this configuration, set
+ <literal>ZEBRA_DIR</literal> to the <ulink url="http://expat.sourceforge.net/">Expat</ulink> source directory.
+ Windows version of Expat can be downloaded from
+ <ulink url="http://sourceforge.net/projects/expat/">
+ SourceForge
+ </ulink>.
</para></listitem>
</varlistentry>
If <literal>HAVE_ICONV</literal> is set to 1, Zebra is compiled
with iconv support. In this configuration, set
<literal>ICONV_DIR</literal> to the iconv source directory.
-
- iconv binaries can be downloaded from
+ Iconv binaries can be downloaded from
<ulink url="http://www.zlatkovic.com/projects/libxml/binaries.html">
- this site</ulink>.
- </para>
+ this site
+ </ulink>.
+ </para>
</listitem>
</varlistentry>
-
+
<varlistentry>
<term><literal>BZIP2INCLUDE</literal>,
<literal>BZIP2LIB</literal>,
</term>
<listitem><para>
Define these symbols if Zebra is to be compiled with
- BZIP2 record compression support.
+ <ulink url="http://sources.redhat.com/bzip2/">BZIP2</ulink>
+ record compression support.
</para></listitem>
</varlistentry>
</para>
</sect1>
+
+
+ <sect1 id="installation-upgrade">
+ <title>Upgrading from Zebra version 1.3.x</title>
+ <para>
+ Zebra's installation directories have changed a bit. In addition,
+ the new loadable modules must be defined in the
+ master <filename>zebra.cfg</filename> configuration file. The old
+ version 1.3.x configuration options
+ <screen>
+ # profilePath - where to look for config files
+ profilePath: some/local/path:/usr/share/idzebra/tab
+ </screen>
+ must be changed to
+ <screen>
+ # profilePath - where to look for config files
+ profilePath: some/local/path:/usr/share/idzebra-2.0/tab
+
+ # modulePath - where to look for loadable zebra modules
+ modulePath: /usr/lib/idzebra-2.0/
+ </screen>
+ </para>
+ <para>
+ The internal binary register structures have changed; all Zebra
+ databases must be re-indexed after upgrade.
+ </para>
+ <para>
+ The attribute set defintion files may no longer contain
+ redirection to other fields.
+ For example the following snippet of
+ a custom <filename>custom/bib1.att</filename>
+ <literal>Bib-1</literal> attribute set definition file is no
+ longer supported:
+ <screen>
+ att 1016 Any 1016,4,1005,62
+ </screen>
+ and should be changed to
+ <screen>
+ att 1016 Any
+ </screen>
+ </para>
+ <para>
+ Similar behaviour can be expressed in the new release by defining
+ a new index <literal>Any:w</literal> in all GRS
+ <filename>*.abs</filename> record indexing configuration files.
+ The above example configuration needs to make the changes
+ from version 1.3.x indexing instructions
+ <screen>
+ xelm /*/alternative Body-of-text:w,Title:s,Title:w
+ xelm /*/title Body-of-text:w,Title:s,Title:w
+ </screen>
+ to version 2.0.0 indexing instructions
+ <screen>
+ xelm /*/alternative Any:w,Body-of-text:w,Title:s,Title:w
+ xelm /*/title Any:w,Body-of-text:w,Title:s,Title:w
+ </screen>
+ </para>
+ <para>
+ It is also possible to map the numerical attribute value
+ <literal>@attr 1=1016</literal> onto another already existing huge
+ index, in this example, one could for example use the mapping
+ <screen>
+ att 1016 Body-of-text
+ </screen>
+ with equivalent outcome without editing all GRS
+ <filename>*.abs</filename> record indexing configuration files.
+ </para>
+
+ <para>
+ Server installations which use the special
+ <literal>IDXPATH</literal> attribute set must add the following
+ line to the <filename>zebra.cfg</filename> configuration file:
+ <screen>
+ attset: idxpath.att
+ </screen>
+ </para>
+ </sect1>
+
</chapter>
<!-- Keep this comment at the end of the file
Local variables: