From charlesreid1

Bugzilla is written in Perl. It's a bug tracking program.

This procedure drew largely on http://oss.segetech.com/bugzilla-svn-wiki.html.

Installing Bugzilla

Prerequisites

There are a bunch of Perl dependencies. I used this script to install all required Perl dependencies. See Perl#Installing page for more info.

#!/bin/sh

# install cpanm
#cpan App::cpanminus

# now install perl module dependencies
cpanm CGI
cpanm Date::Format
cpanm DateTime
cpanm DateTime 
cpanm DateTime::TimeZone 
cpanm DBI 
cpanm DBD::mysql 
cpanm DBD::Pg 
cpanm DBD::Oracle 
cpanm Digest::SHA 
cpanm Email::Send 
cpanm Email::MIME 
cpanm Template 
cpanm URI

If you run into trouble downloading/installing any of these, you can also download tarballs from the Perl CPAN web site. You can get instructions on how to install the CPAN tarballs there, but generally it will be something like this:

perl Makefile.PL # this generates a Makefile
make 
make test # for DB::mysql or other database perl modules, this won't work unless you have a 'test' database
sudo make install

Checksetup.pl

Once you have all prerequisites, run ./checksetup.pl. This will tell you everything is OK with your prerequisites. It will then create a localconfig file for you to edit to set your bugzilla settings.

Localconfig

Edit, set your database user and database password. Create a 'bugs' user for Bugzilla to use:

$ mysql -u root -p

mysql> RANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER,
  CREATE, LOCK TABLES, CREATE TEMPORARY TABLES, DROP,
  REFERENCES ON bugs.* TO bugs@localhost
  IDENTIFIED BY '<bugs-password>';
FLUSH PRIVILEGES;

Checksetup.pl Redux

Now run ./checksettings.pl again.

Apache Settings

Alias /bugzilla /path/to/bugzilla

<Directory "/path/to/bugzilla">
    Order allow,deny
    Allow from all

    AddHandler cgi-script .cgi
    Options Indexes ExecCGI
    DirectoryIndex index.cgi
    AllowOverride All

</Directory>