-<para>
-Unpack the distribution archive. The <literal remap="tt">configure</literal> shell script
-attempts to guess correct values for various system-dependent variables
-used during compilation. It uses those values to create a 'Makefile' in
-each directory of Zebra.
-</para>
-
-<para>
-To run the configure script type:
-
-<screen>
- ./configure
-</screen>
-
-</para>
-
-<para>
-The configure script attempts to use C compiler specified by
-the <literal remap="tt">CC</literal> environment variable. If not set, <literal remap="tt">cc</literal>
-will be used. The <literal remap="tt">CFLAGS</literal> environment variable holds
-options to be passed to the C compiler. If you're using a Bourne-shell
-compatible shell you may pass something like this:
-
-<screen>
- CC=/opt/ccs/bin/cc CFLAGS=-O ./configure
-</screen>
-
-</para>
-
-<para>
-When configured build the software by typing:
-
-<screen>
- make
-</screen>
-
-</para>
-
-<para>
-As an option you may type <literal remap="tt">make depend</literal> to create
-source file dependencies for the package. This is only needed,
-however, if you alter the source.
-</para>
-
-<para>
-If successful, two executables have been created in the sub-directory
-<literal remap="tt">index</literal>.
-<variablelist>
-
-<varlistentry>
-<term><literal remap="tt">zebrasrv</literal></term>
-<listitem>
-<para>
-The Z39.50 server and search engine.
-</para>
-</listitem>
-</varlistentry>
-<varlistentry>
-<term><literal remap="tt">zebraidx</literal></term>
-<listitem>
-<para>
-The administrative tool for the search index.
-</para>
-</listitem>
-</varlistentry>
-</variablelist>
-</para>
-
-</chapter>
+ <sect1 id="installation.unix"><title>UNIX</title>
+ <para>
+ On Unix, <literal>gcc</literal> works fine, but any native
+ C compiler should be possible to use as long as it is
+ ANSI C compliant.
+ </para>
+
+ <para>
+ Unpack the distribution archive. The <literal>configure</literal>
+ shell script attempts to guess correct values for various
+ system-dependent variables used during compilation.
+ It uses those values to create a <literal>Makefile</literal> in each
+ directory of Zebra.
+ </para>
+
+ <para>
+ To run the configure script type:
+
+ <screen>
+ ./configure
+ </screen>
+
+ </para>
+
+ <para>
+ The configure script attempts to use C compiler specified by
+ the <literal>CC</literal> environment variable.
+ If this is not set, <literal>cc</literal> or GNU C will be used.
+ The <literal>CFLAGS</literal> environment variable holds
+ options to be passed to the C compiler. If you're using a
+ Bourne-shell compatible shell you may pass something like this:
+
+ <screen>
+ CC=/opt/ccs/bin/cc CFLAGS=-O ./configure
+ </screen>
+ </para>
+ <para>
+ The configure script support various options: you can see what they
+ are with
+ <screen>
+ ./configure --help
+ </screen>
+ </para>
+
+ <para>
+ Once the build environment is configured, build the software by
+ typing:
+ <screen>
+ make
+ </screen>
+ </para>
+
+ <para>
+ If the build is successful, two executables are created in the
+ sub-directory <literal>index</literal>:
+ <variablelist>
+
+ <varlistentry>
+ <term><literal>zebrasrv</literal></term>
+ <listitem>
+ <para>
+ The Z39.50 server and search engine.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><literal>zebraidx</literal></term>
+ <listitem>
+ <para>
+ The administrative indexing tool.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+
+ <para>
+ You can now use Zebra. If you wish to install it system-wide, then
+ as root type
+ <screen>
+ make install
+ </screen>
+ 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>
+ You can override this with the <literal>--prefix</literal> option
+ to configure.
+ </para>
+ </sect1>
+ <sect1 id="installation.win32"><title>WIN32</title>
+ <para>The easiest way to install Zebra on Windows is by downloading
+ an installer from
+ <ulink url="http://ftp.indexdata.dk/pub/zebra/win32/">here</ulink>.
+ The installer comes with source too - in case you wish to
+ compile Zebra with different Compiler options.
+ </para>
+
+ <para>
+ Zebra is shipped with "makefiles" for the NMAKE tool that comes
+ with <ulink url="http://msdn.microsoft.com/vstudio/">
+ Microsoft Visual C++</ulink>.
+ Version 6 has been tested. We expect that zebra compiles
+ with version 5 as well.
+ </para>
+ <para>
+ Start a command prompt and switch the sub directory
+ <filename>WIN</filename> where the file <filename>makefile</filename>
+ is located. Customize the installation by editing the
+ <filename>makefile</filename> file (for example by using notepad).
+
+ The following summarizes the most important settings in that file:
+
+ <variablelist>
+ <varlistentry><term><literal>DEBUG</literal></term>
+ <listitem><para>
+ If set to 1, the software is
+ compiled with debugging libraries (code generation is
+ multi-threaded debug DLL).
+ If set to 0, the software is compiled with release libraries
+ (code generation is multi-threaded DLL).
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>YAZDIR</literal></term>
+ <listitem><para>
+ Directory of YAZ source. Zebra's makefile expects to find
+ <filename>yaz.lib</filename>, <filename>yaz.dll</filename>
+ in <replaceable>yazdir</replaceable><literal>/lib</literal> and
+ <replaceable>yazdir</replaceable><literal>/bin</literal> respectively.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>HAVE_EXPAT</literal>,
+ <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.
+ Windows version of Expat can be downloaded from
+ <ulink url="http://sourceforge.net/projects/expat/">
+ SourceForge
+ </ulink>.
+ </para></listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>HAVE_ICONV</literal>,
+ <literal>ICONV_DIR</literal></term>
+ <listitem><para>
+ 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
+ <ulink url="http://www.zlatkovic.com/projects/libxml/binaries.html">
+ this site
+ </ulink>.
+ </para>
+ </listitem>
+ </varlistentry>
+
+ <varlistentry>
+ <term><literal>BZIP2INCLUDE</literal>,
+ <literal>BZIP2LIB</literal>,
+ <literal>BZIP2DEF</literal>
+ </term>
+ <listitem><para>
+ Define these symbols if Zebra is to be compiled with
+ <ulink url="http://sources.redhat.com/bzip2/">BZIP2</ulink>
+ record compression support.
+ </para></listitem>
+ </varlistentry>
+
+ </variablelist>
+ </para>
+ <warning>
+ <para>
+ The <literal>DEBUG</literal> setting in the makefile for Zebra must
+ be set to the same value as <literal>DEBUG</literal> setting in the
+ makefile for YAZ.
+ If not, the Zebra server/indexer will crash.
+ </para>
+ </warning>
+ <para>
+ When satisfied with the settings in the makefile, type
+ <screen>
+ nmake
+ </screen>
+ </para>
+ <note>
+ <para>
+ If the <filename>nmake</filename> command is not found on your system
+ you probably haven't defined the environment variables required to
+ use that tool. To fix that, find and run the batch file
+ <filename>vcvars32.bat</filename>. You need to run it from within
+ the command prompt or set the environment variables "globally";
+ otherwise it doesn't work.
+ </para>
+ </note>
+ <para>
+ If you wish to recompile Zebra - for example if you modify
+ settings in the <filename>makefile</filename> you can delete
+ object files, etc by running.
+ <screen>
+ nmake clean
+ </screen>
+ </para>
+ <para>
+ The following files are generated upon successful compilation:
+
+ <variablelist>
+ <varlistentry><term><filename>bin/zebraidx.exe</filename></term>
+ <listitem><para>
+ The Zebra indexer.
+ </para></listitem></varlistentry>
+
+ <varlistentry><term><filename>bin/zebrasrv.exe</filename></term>
+ <listitem><para>
+ The Zebra server.
+ </para></listitem></varlistentry>
+
+ </variablelist>
+
+ </para>
+ </sect1>
+ </chapter>
+ <!-- Keep this comment at the end of the file
+ Local variables:
+ mode: sgml
+ sgml-omittag:t
+ sgml-shorttag:t
+ sgml-minimize-attributes:nil
+ sgml-always-quote-attributes:t
+ sgml-indent-step:1
+ sgml-indent-data:t
+ sgml-parent-document: "zebra.xml"
+ sgml-local-catalogs: nil
+ sgml-namecase-general:t
+ End:
+ -->