+ <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
+ YAZ<filename>.lib</filename>, YAZ<filename>.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 <ulink url="&url.expat;">Expat</ulink> support.
+ In this configuration, set
+ <literal>ZEBRA_DIR</literal> to the Expat source directory.
+ Windows version of Expat can be downloaded from
+ <ulink url="&url.expat;">SourceForge</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="&url.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>
+ </section>
+
+
+ <section 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/modules
+ </screen>
+ </para>
+ <note>
+ <para>
+ The internal binary register structures have changed; all &zebra;
+ databases must be re-indexed after upgrade.
+ </para>
+ </note>
+ <para>
+ The attribute set definition files may no longer contain
+ redirection to other fields.
+ For example the following snippet of
+ a custom <filename>custom/bib1.att</filename>
+ &acro.bib1; 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 &acro.grs1;
+ <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 &acro.grs1;
+ <filename>*.abs</filename> record indexing configuration files.
+ </para>
+
+ <para>
+ Server installations which use the special
+ <literal>&acro.idxpath;</literal> attribute set must add the following
+ line to the <filename>zebra.cfg</filename> configuration file:
+ <screen>
+ attset: idxpath.att
+ </screen>
+ </para>
+ </section>
+