1 <!-- $Id: installation.xml,v 1.10 2003-03-06 13:16:02 adam Exp $ -->
2 <chapter id="installation">
3 <title>Installation</title>
5 Zebra is written in ANSI C and was implemented with portability in mind.
6 We primarily use GCC on UNIX and Microsoft Visual C++ on Windows.
10 The software is regularly tested on
11 <ulink url="http://www.debian.org/">Debian GNU/Linux</ulink>,
12 <ulink url="http://www.redhat.com/">Redhat Linux</ulink>,
13 <ulink url="http://www.gentoo.org/">Gentoo Linux</ulink>,
14 <ulink url="http://www.netbsd.org/Ports/cobalt/">NetBSD (Cobalt)</ulink>,
15 <ulink url="http://www.freebsd.org/">FreeBSD (i386)</ulink>,
16 <ulink url="http://www.apple.com/macosx/">MAC OSX</ulink>,
17 <ulink url="http://wwws.sun.com/software/solaris/">SunOS 5.8 (sparc)</ulink>,
18 <ulink url="http://www.microsoft.com/windows2000/">Windows 2000 SP3</ulink>.
22 Zebra can be configured to use the following utilities (most of
27 <term><ulink url="http://www.indexdata.dk/yaz/">yaz</ulink> (required)</term>
30 Zebra uses YAZ to support Z39.50/SRW. Also the memory management
31 utilites from YAZ is used by Zebra.
36 <term><ulink url="http://www.gnu.org/software/libiconv/">iconv</ulink>
40 Character set conversion. This is required if you're
41 going to use any other character set than UTF-8 and ISO-8859-1
42 for records. Note that some Unixes has iconv built-in.
47 <term><ulink url="http://expat.sourceforge.net/">Expat</ulink>
51 XML parser. If you're going to index real XML you should
52 install this (filter grs.xml). On most systems you should be able
53 to find binary Expat packages.
59 <term><ulink url="http://www.perl.com/">Perl</ulink> (optional)</term>
62 Perl is required if you're going to use the Zebra perl
63 filter facility or the Zebra perl API. Perl is preinstalled
64 on many Unixes. We've not tried the Perl extension on
71 <term><ulink url="http://www.tcl.tk/">Tcl</ulink> (optional)</term>
74 Tcl is required if you need to use the Tcl record filter
75 for Zebra. You can find binary packages for Tcl for many
83 <ulink url="http://www.gnu.org/software/autoconf/">Autoconf</ulink>,
84 <ulink url="http://www.gnu.org/software/automake/">Automake</ulink>
88 GNU Automake and Autoconf are only required if you're
89 using the CVS version of Zebra. You do not need these
90 if you have fetched a Zebra tar.
96 <term><ulink url="http://docbook.org/">Docbook</ulink>
97 and friends (optional)</term>
100 These tools are only required if you're writing
101 documentation for Zebra. You need the following
102 Debian packages: jadetex, docbook, docbook-dsssl,
103 docbook-xml, docbook-utils.
110 <sect1 id="installation.unix"><title>UNIX</title>
112 On Unix, <literal>gcc</literal> works fine, but any native
113 C compiler should be possible to use as long as it is
118 Unpack the distribution archive. The <literal>configure</literal>
119 shell script attempts to guess correct values for various
120 system-dependent variables used during compilation.
121 It uses those values to create a <literal>Makefile</literal> in each
126 To run the configure script type:
135 The configure script attempts to use C compiler specified by
136 the <literal>CC</literal> environment variable.
137 If this is not set, <literal>cc</literal> or GNU C will be used.
138 The <literal>CFLAGS</literal> environment variable holds
139 options to be passed to the C compiler. If you're using a
140 Bourne-shell compatible shell you may pass something like this:
143 CC=/opt/ccs/bin/cc CFLAGS=-O ./configure
147 The configure script support various options: you can see what they
155 Once the build environment is configured, build the software by
163 If the build is successful, two executables are created in the
164 sub-directory <literal>index</literal>:
168 <term><literal>zebrasrv</literal></term>
171 The Z39.50 server and search engine.
176 <term><literal>zebraidx</literal></term>
179 The administrative indexing tool.
187 You can now use Zebra. If you wish to install it system-wide, then
192 By default this will install the Zebra executables in
193 <filename>/usr/local/bin</filename>,
194 and the standard configuration files in
195 <filename>/usr/local/share/idzebra</filename>
196 You can override this with the <literal>--prefix</literal> option
200 <sect1 id="installation.win32"><title>WIN32</title>
206 <!-- Keep this comment at the end of the file
211 sgml-minimize-attributes:nil
212 sgml-always-quote-attributes:t
215 sgml-parent-document: "zebra.xml"
216 sgml-local-catalogs: nil
217 sgml-namecase-general:t