<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML
><HEAD
><TITLE
>OS-Specific Installation Notes</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK
REL="HOME"
TITLE="The Bugzilla Guide - 2.20.1 
    Release"
HREF="index.html"><LINK
REL="UP"
TITLE="Installing Bugzilla"
HREF="installing-bugzilla.html"><LINK
REL="PREVIOUS"
TITLE="Optional Additional Configuration"
HREF="extraconfig.html"><LINK
REL="NEXT"
TITLE="UNIX (non-root) Installation Notes"
HREF="nonroot.html"></HEAD
><BODY
CLASS="section"
BGCOLOR="#FFFFFF"
TEXT="#000000"
LINK="#0000FF"
VLINK="#840084"
ALINK="#0000FF"
><DIV
CLASS="NAVHEADER"
><TABLE
SUMMARY="Header navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TH
COLSPAN="3"
ALIGN="center"
>The Bugzilla Guide - 2.20.1 
    Release</TH
></TR
><TR
><TD
WIDTH="10%"
ALIGN="left"
VALIGN="bottom"
><A
HREF="extraconfig.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
>Chapter 2. Installing Bugzilla</TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="nonroot.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><DIV
CLASS="section"
><H1
CLASS="section"
><A
NAME="os-specific"
>2.4. OS-Specific Installation Notes</A
></H1
><P
>Many aspects of the Bugzilla installation can be affected by the
    the operating system you choose to install it on. Sometimes it can be made
    easier and others more difficult. This section will attempt to help you
    understand both the difficulties of running on specific operating systems
    and the utilities available to make it easier.
    </P
><P
>If you have anything to add or notes for an operating system not
    covered, please file a bug in <A
HREF="http://bugzilla.mozilla.org/enter_bug.cgi?product=Bugzilla&#38;component=Documentation"
TARGET="_top"
>Bugzilla Documentation</A
>. 
    </P
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="os-win32"
>2.4.1. Microsoft Windows</A
></H2
><P
>&#13;        Making Bugzilla work on Windows is more difficult than making it
        work on Unix.  For that reason, we still recommend doing so on a Unix 
        based system such as GNU/Linux.  That said, if you do want to get
        Bugzilla running on Windows, you will need to make the following
        adjustments.
      </P
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="win32-perl"
>2.4.1.1. Win32 Perl</A
></H3
><P
>&#13;          Perl for Windows can be obtained from 
          <A
HREF="http://www.activestate.com/"
TARGET="_top"
>ActiveState</A
>.
           You should be able to find a compiled binary at <A
HREF="http://aspn.activestate.com/ASPN/Downloads/ActivePerl/"
TARGET="_top"
>http://aspn.activestate.com/ASPN/Downloads/ActivePerl/</A
>.
           The following instructions assume that you are using version
           5.8.1 of ActiveState.
          </P
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="win32-perl-modules"
>2.4.1.2. Perl Modules on Win32</A
></H3
><P
>&#13;          Bugzilla on Windows requires the same perl modules found in
          <A
HREF="installation.html#install-perlmodules"
>Section 2.1.5</A
>. The main difference is that
          windows uses <A
HREF="glossary.html#gloss-ppm"
><I
CLASS="glossterm"
>PPM</I
></A
> instead
          of CPAN.
        </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;C:\perl&#62; <B
CLASS="command"
>ppm install &#60;module name&#62;</B
>
        </PRE
></FONT
></TD
></TR
></TABLE
><P
>&#13;          The best source for the Windows PPM modules needed for Bugzilla
          is probably the the Bugzilla Test Server (aka 'Landfill'), so 
          you should add the Landfill package repository as follows:
        </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="programlisting"
>&#13;<B
CLASS="command"
>ppm repository add landfill http://www.landfill.bugzilla.org/ppm/</B
>
        </PRE
></FONT
></TD
></TR
></TABLE
><DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;            The PPM repository stores modules in 'packages' that may have
            a slightly different name than the module.  If retrieving these
            modules from there, you will need to pay attention to the information
            provided when you run <B
CLASS="command"
>checksetup.pl</B
> as it will
            tell you what package you'll need to install.
          </P
></TD
></TR
></TABLE
></DIV
><DIV
CLASS="tip"
><P
></P
><TABLE
CLASS="tip"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/tip.gif"
HSPACE="5"
ALT="Tip"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;            If you are behind a corporate firewall, you will need to let the
            ActiveState PPM utility know how to get through it to acccess
            the repositories by setting the HTTP_proxy system environmental
            variable. For more information on setting that variable, see
            the ActiveState documentation.
          </P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="win32-code-changes"
>2.4.1.3. Code changes required to run on Win32</A
></H3
><P
>&#13;          Bugzilla on Win32 is supported out of the box from version 2.20; this
          means that no code changes are required to get Bugzilla running.
        </P
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="win32-http"
>2.4.1.4. Serving the web pages</A
></H3
><P
>&#13;          As is the case on Unix based systems, any web server should
          be able to handle Bugzilla; however, the Bugzilla Team still
          recommends Apache whenever asked. No matter what web server
          you choose, be sure to pay attention to the security notes
          in <A
HREF="security-webserver.html#security-webserver-access"
>Section 4.3.1</A
>. More
          information on configuring specific web servers can be found
          in <A
HREF="configuration.html#http"
>Section 2.2.4</A
>.
        </P
><DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>&#13;            If using Apache on windows, you can set the <A
HREF="http://httpd.apache.org/docs-2.0/mod/core.html#scriptinterpretersource"
TARGET="_top"
>ScriptInterpreterSource</A
>
            directive in your Apache config to avoid having to modify
            the first line of every script to contain your path to perl 
            perl instead of <TT
CLASS="filename"
>/usr/bin/perl</TT
>.
          </P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="section"
><H3
CLASS="section"
><A
NAME="win32-email"
>2.4.1.5. Sending Email</A
></H3
><P
>&#13;          To enable Bugzilla to send email on Windows, the server running the
          Bugzilla code must be able to connect to, or act as, an SMTP server.
        </P
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="os-macosx"
>2.4.2. <SPAN
CLASS="productname"
>Mac OS X</SPAN
></A
></H2
><P
>Apple did not include the GD library with Mac OS X. Bugzilla
      needs this for bug graphs.</P
><P
>You can install it using a program called
      Fink, which is similar in nature to the CPAN installer, but installs
      common GNU utilities. Fink is available from
      <A
HREF="http://sourceforge.net/projects/fink/"
TARGET="_top"
>http://sourceforge.net/projects/fink/</A
>.</P
><P
>Follow the instructions for setting up Fink. Once it's installed,
      you'll want to use it to install the <TT
CLASS="filename"
>gd2</TT
> package.
      </P
><P
>It will prompt you for a number of dependencies, type 'y' and hit
      enter to install all of the dependencies and then watch it work. You will
      then be able to use <A
HREF="glossary.html#gloss-cpan"
><I
CLASS="glossterm"
>CPAN</I
></A
> to
      install the GD Perl module.
      </P
><DIV
CLASS="note"
><P
></P
><TABLE
CLASS="note"
WIDTH="100%"
BORDER="0"
><TR
><TD
WIDTH="25"
ALIGN="CENTER"
VALIGN="TOP"
><IMG
SRC="../images/note.gif"
HSPACE="5"
ALT="Note"></TD
><TD
ALIGN="LEFT"
VALIGN="TOP"
><P
>To prevent creating conflicts with the software that Apple
        installs by default, Fink creates its own directory tree at 
        <TT
CLASS="filename"
>/sw</TT
> where it installs most of
        the software that it installs. This means your libraries and headers
        will be at <TT
CLASS="filename"
>/sw/lib</TT
> and
        <TT
CLASS="filename"
>/sw/include</TT
> instead of
        <TT
CLASS="filename"
>/usr/lib</TT
> and
        <TT
CLASS="filename"
>/usr/include</TT
>. When the
        Perl module config script asks where your <TT
CLASS="filename"
>libgd</TT
>
        is, be sure to tell it
        <TT
CLASS="filename"
>/sw/lib</TT
>.
        </P
></TD
></TR
></TABLE
></DIV
><P
>Also available via Fink is <TT
CLASS="filename"
>expat</TT
>. After using
      fink to install the expat package you will be able to install
      XML::Parser using CPAN. There is one caveat. Unlike recent versions of
      the GD module, XML::Parser doesn't prompt for the location of the
      required libraries. When using CPAN, you will need to use the following
      command sequence:
      </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;# perl -MCPAN -e'look XML::Parser'        <A
NAME="macosx-look"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
>
# perl Makefile.PL EXPATLIBPATH=/sw/lib EXPATINCPATH=/sw/include
# make; make test; make install           <A
NAME="macosx-make"
><IMG
SRC="../images/callouts/2.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(2)"></A
>
# exit                                    <A
NAME="macosx-exit"
><IMG
SRC="../images/callouts/3.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(3)"></A
>
      </PRE
></FONT
></TD
></TR
></TABLE
><DIV
CLASS="calloutlist"
><DL
COMPACT="COMPACT"
><DT
><A
HREF="os-specific.html#macosx-look"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
><A
HREF="os-specific.html#macosx-exit"
><IMG
SRC="../images/callouts/3.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(3)"></A
></DT
><DD
>The look command will download the module and spawn a
          new shell with the extracted files as the current working directory.
          The exit command will return you to your original shell.
          </DD
><DT
><A
HREF="os-specific.html#macosx-make"
><IMG
SRC="../images/callouts/2.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(2)"></A
></DT
><DD
>You should watch the output from these make commands,
          especially <SPAN
CLASS="QUOTE"
>"make test"</SPAN
> as errors may prevent XML::Parser
          from functioning correctly with Bugzilla.
          </DD
></DL
></DIV
></DIV
><DIV
CLASS="section"
><H2
CLASS="section"
><A
NAME="os-mandrake"
>2.4.3. Linux-Mandrake 8.0</A
></H2
><P
>Linux-Mandrake 8.0 includes every required and optional library
      for Bugzilla. The easiest way to install them is by using the
      <B
CLASS="command"
>urpmi</B
>  utility. If you follow these commands, you
      should have everything you need for Bugzilla, and
      <B
CLASS="command"
>./checksetup.pl</B
>  should not complain about any
      missing libraries. You may already have some of these installed.
      </P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
WIDTH="100%"
><TR
><TD
><FONT
COLOR="#000000"
><PRE
CLASS="screen"
>&#13;<SAMP
CLASS="prompt"
>bash#</SAMP
> <B
CLASS="command"
>urpmi perl-mysql</B
>
<SAMP
CLASS="prompt"
>bash#</SAMP
> <B
CLASS="command"
>urpmi perl-chart</B
>
<SAMP
CLASS="prompt"
>bash#</SAMP
> <B
CLASS="command"
>urpmi perl-gd</B
>
<SAMP
CLASS="prompt"
>bash#</SAMP
> <B
CLASS="command"
>urpmi perl-MailTools</B
>             <A
NAME="test-mailtools"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
>
<SAMP
CLASS="prompt"
>bash#</SAMP
> <B
CLASS="command"
>urpmi apache-modules</B
>
      </PRE
></FONT
></TD
></TR
></TABLE
><DIV
CLASS="calloutlist"
><DL
COMPACT="COMPACT"
><DT
><A
HREF="os-specific.html#test-mailtools"
><IMG
SRC="../images/callouts/1.gif"
HSPACE="0"
VSPACE="0"
BORDER="0"
ALT="(1)"></A
></DT
><DD
>for Bugzilla email integration</DD
></DL
></DIV
></DIV
></DIV
><DIV
CLASS="NAVFOOTER"
><HR
ALIGN="LEFT"
WIDTH="100%"><TABLE
SUMMARY="Footer navigation table"
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
><A
HREF="extraconfig.html"
ACCESSKEY="P"
>Prev</A
></TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="index.html"
ACCESSKEY="H"
>Home</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
><A
HREF="nonroot.html"
ACCESSKEY="N"
>Next</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>Optional Additional Configuration</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="installing-bugzilla.html"
ACCESSKEY="U"
>Up</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>UNIX (non-root) Installation Notes</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>