INSTALLATION for mod_perl.c, mod_perl_fast.c and Apache.*

**IMPORTANT**
-------------

Currently, you can only use mod_perl *or* mod_perl_fast.
You may however, build Apache with both modules.
To "turn off" mod_perl, simply #comment out the AddType httpd/perl .pl in srm.conf.

Prerequisites
-------------

You need apache1.1b2 or better.

Make sure you have perl version 5.002_01 or higher, compiled with -DEMBED
(this is the default with 5.002_01+ anyway)

If you do not have Perl version 5.003_01 or higher,
fetch and install ExtUtils::Embed from CPAN 
<URL:http://www.perl.com/CPAN/modules/by-module/ExtUtils/ExtUtils-Embed-1.07.tar.gz>

Build and install the perl part of this module
----------------------------------------------

The perl modules under lib/ can be installed by saying (in this current directory):

  perl Makefile.PL
  make
  make install

*** NOTE ***
This install includes the module Apache::Registry, which uses the standard
module 'FileHandle'.  There is a bug in the current version of this module,
we suggest you apply the patch 'FileHandle.patch' to fix the problem
until it is fixed in the standard distribution of Perl.
Although, it is a strange bug, you might not even see it without the patch...
 
Build apache
------------

To build the apache server, you'll need to use the Makefile.tmpl file
in this directory for 1.1b4+, 
(Makefile.tmpl.1.1b2 for 1.1b2, Makefile.tmpl.1.2 for 1.2), 
or make changes to your copy. So either copy the Makefile.tmpl in this
directory to the apache_xxx/src/ directory or edit
apache_xxx/src/Makefile.tmpl first.

You'll also need to edit the apache_xxx/src/Configuration file in the
apache build directory:

For mod_perl add:

    Module perl_module mod_perl.o

For mod_perl_fast add:

    Module perl_fast_module mod_perl_fast.o

Copy the files in this src/ to apache's src/

Follow the Apache install docs from there.

See the 'UsersGuide' file for info on configuring, running
and writing Apache/Perl scripts and modules.
 
Using PerlIO
------------
When you Configure Perl as of 5.002_02, you will be given the option to
use sfio rather than stdio.  If you choose this option, STDOUT will be
hooked up to the client for writing (or print'ing), as will STDIN for
reading.
Perl scripts outside of Apache will run as expected.
See the Perl INSTALL document for more information.

You may also want to look at the Apache::TieHandle module.

Support
-------

For comments, questions, bug-reports, announcements, etc., send mail
to majordomo@listproc.itribe.net with the string "subscribe modperl"
in the body.  (Thanks to Mark A. Imbriaco <mark@itribe.net>)

Thanks to James Cooper <pixel@tiger.coe.missouri.edu>,
there is a hypermail archive for this list at:
 
http://www.coe.missouri.edu/~faq/lists/modperl/
 

IF YOU HAVE PROBLEMS
--------------------

Please send mail to modperl@listproc.itribe.net with the output of:

    Output of perl -v; perl -V

    which module you are trying to use (mod_perl or mod_perl_fast),
    and version of the package.

    which script from the eg/ directory you are using.
    (please try a script from there first.)

    your apache server version details of your server configuration.

    if you get a core dump, please send a backtrace if possible.


