mod_perl
view release on metacpan or search on metacpan
docs/user/install/install.pod view on Meta::CPAN
=head1 NAME
Installing mod_perl 2.0
=head1 Description
This chapter provides an in-depth mod_perl 2.0 installation coverage.
=head1 Prerequisites
Before building mod_perl 2.0 you need to have its prerequisites
installed. If you don't have them, download and install them first,
using the information in the following sections. Otherwise proceed
directly to the mod_perl building instructions.
The mod_perl 2.0 prerequisites are:
=over
=item * Apache
Apache 2.0 is required. mod_perl 2.0 B<does not> work with Apache 1.3.
L<Dynamic|/MP_USE_DSO> (DSO) mod_perl build requires Apache 2.0.47 or
higher. L<Static|/MP_USE_STATIC> build requires Apache 2.0.51 or
higher.
=item * Perl
=over
=item Prefork MPM
Requires at least Perl version 5.6.1.
You don't need to have threads-support enabled in Perl. If you do have
it, it B<must> be I<ithreads> and not I<5005threads>! If you have:
% perl5.8.0 -V:use5005threads
use5005threads='define';
you must rebuild Perl without threads enabled or with
C<-Dusethreads>. Remember that threads-support slows things down and
on some platforms it's unstable (e.g., FreeBSD), so don't enable it
unless you really need it.
=item 64 bit Linux
If while running C<make test> while building mod_perl 2 you get an error like
this:
/usr/bin/ld: /usr/local/lib/perl5/5.10.1/x86_64-linux/CORE/libperl.a(op.o): \
relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared \
object; recompile with -fPIC
/usr/local/lib/perl5/5.10.1/x86_64-linux/CORE/libperl.a: could not read symbols: Bad \
value
You're likely on 64 bit Linux and will need to build Perl for that platform.
You can do so by running Perl's C<Configure> with the C<$CFLAGS> environment
variable and the C<-A> and C<ccflags> options. So if you normally build Perl
with:
% ./Configure -des
You would instead configure with:
% CFLAGS='-m64 -mtune=nocona' ./Configure -des -A ccflags=-fPIC
=item Threaded MPMs
Require at least Perl version 5.8.0 with ithreads support
built-in. That means that it should report:
% perl5.8.0 -V:useithreads -V:usemultiplicity
useithreads='define';
usemultiplicity='define';
If that's not what you see rebuild Perl with C<-Dusethreads>.
=item Static prefork build
Perl with ithreads support version 5.6.1 or higher
Perl without ithreads support version 5.8.2 or higher
=item Static non-prefork build
Perl with ithreads support version 5.8.0 or higher
=item threads.pm
If you want to run applications that take benefit of Perl's
I<threads.pm> Perl version 5.8.1 or higher w/ithreads enabled is
required. Perl 5.8.0's I<threads.pm> doesn't work with mod_perl 2.0.
=back
=item * CPAN Perl Modules
The mod_perl 2.0 test suite has several requirements on its own. If
you don't satisfy them, the tests depending on these requirements will
be skipped, which is OK, but you won't get to run these tests and
potential problems, which may exhibit themselves in your own code,
could be missed. We don't require them from C<Makefile.PL>, which
could have been automated the requirements installation, in order to
have less dependencies to get mod_perl 2.0 installed.
Also if your code uses any of these modules, chances are that you will
need to use at least the version numbers listed here.
=over
=item CGI.pm 3.11
( run in 0.555 second using v1.01-cache-2.11-cpan-5511b514fd6 )