Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 30980 - mod_perl modules not working with Apache2
Summary: mod_perl modules not working with Apache2
Status: RESOLVED WONTFIX
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High critical (vote)
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2003-10-12 11:46 UTC by Fernando Henrique Ferraz Pereira da Rosa
Modified: 2004-05-01 13:27 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Fernando Henrique Ferraz Pereira da Rosa 2003-10-12 11:46:39 UTC
Emerging mod_perl-1.99.09 won't make it work as expected. Apparently, it's
modules are saved into /usr/lib/perl5/vendor_perl/5.8.0/i686-linux/Apache2/, but
perl is not being configured to look into this path. The result is that, trying
to use mod_perl inside Apache fails.

Reproducible: Always
Steps to Reproduce:
1. emerge /usr/portage/dev-perl/mod_perl/mod_perl-1.99.09.ebuild 
2. set up a mod_perl script (using for example, the Mod_perl::Registry module).
Detailed steps for this can be found in
http://perl.apache.org/docs/2.0/user/intro/start_fast.html under the title
'Registry Scripts'
3. /etc/init.d/apache2 restart
4. Try running the script. In the example above, it would be acessing
http://localhost/perl/rock.pl


Actual Results:  
On the browser I was given the message: Error 500 Internal Server Error. Looking
at /var/log/apache2/error_log gave me the following: 
[Sun Oct 12 15:42:46 2003] [error] failed to resolve handler `ModPerl::Registry'
[Sun Oct 12 15:42:46 2003] [error] [client 127.0.0.1] Can't locate
ModPerl/Registry.pm in @INC (@INC contains: /usr/lib/perl5/5.8.0/i686-linux
/usr/lib/perl5/5.8.0 /usr/lib/perl5/site_perl/5.8.0/i686-linux
/usr/lib/perl5/site_perl/5.8.0 /usr/lib/perl5/site_perl
/usr/lib/perl5/vendor_perl/5.8.0/i686-linux /usr/lib/perl5/vendor_perl/5.8.0
/usr/lib/perl5/vendor_perl . /etc/apache2/ /etc/apache2/lib/perl) at (eval 1)
line 3.

Which clearly shows that  /usr/lib/perl5/vendor_perl/5.8.0/i686-linux/Apache2/
 is not being added to the path perl uses to load its modules.
A quick way around this is: 
  # export PERL5LIB=/usr/lib/perl5/vendor_perl/5.8.0/i686-linux/Apache2/
  # /etc/init.d/apache2 restart

Which gives the expected results: the scripts runs flawlessly then. 



mentecapto / # emerge info
Portage 2.0.49-r3 (default-x86-1.4, gcc-3.2.3, glibc-2.3.2-r1, 2.4.21-win4lin)
=================================================================
System uname: 2.4.21-win4lin i686 AMD Duron(tm) Processor
ACCEPT_KEYWORDS="x86"
AUTOCLEAN="yes"
CFLAGS="-O2 -march=athlon-xp -pipe"
CHOST="i686-pc-linux-gnu"
COMPILER="gcc3"
CONFIG_PROTECT="/etc /var/qmail/control /usr/kde/2/share/config
/usr/kde/3/share/config /usr/X11R6/lib/X11/xkb /usr/kde/3.1/share/config
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/
/usr/share/config"
CONFIG_PROTECT_MASK="/etc/gconf /etc/env.d"
CXXFLAGS="-O2 -march=athlon-xp -pipe"
DISTDIR="/usr/portage/distfiles"
FEATURES="sandbox ccache autoaddcvs"
GENTOO_MIRRORS="ftp://gentoo.noved.org/ http://adelie.polymtl.ca/
ftp://ftp.ussg.iu.edu/pub/linux/gentoo http://gentoo.noved.org/"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.gentoo.org/gentoo-portage"
USE="apm foomaticdb libg++ mikmod mpeg pdflib spell xml2 gdbm berkdb slang arts
aalib svga mysql tcpd libwww ssl esd motif moznocompose moznoirc moznomail cups
-3dfx 3dnow -acl -afs -alsa -apache2 -atlas avi -canna cdr -cjk crypt -debug
-dedicated -dvb dvd -emacs encode -ethereal -ev6 -evo -fbcon -firebird -flash
-gb gif -gnome -gphoto2 gpm -gps gtk -gtkhtml -guile imagemagick -icc -icc-pgo
-imap imlib -ipv6 -jack java jikes -joystick jpeg -junit -kde -kerberos -krb4
-ladcca icms -ldap -leim -lirc mad maildir -matrox -mbox -mcal mmx mozilla -mule
-nas ncurses -nls -nocardbus -oci8 -odbc oggvorbis opengl oss -pam -pcmcia -pda
perl plotutils png -pnp -postgres python qt quicktime readline -samba scanner
sdl sse -socks5 tcltk tetex tiff truetype -usb -voodoo3 -trusted -wavelan X
-Xaw3d -xinerama xmms x86 zlib xv"
Comment 1 Martin Holzer (RETIRED) gentoo-dev 2003-11-25 00:26:42 UTC
how about marking mod_perl 1.99.X as stable since apache2 is now stable and 1.27 is only for apache1
Comment 2 Robert Coie (RETIRED) gentoo-dev 2003-12-19 16:25:15 UTC
I'd prefer not to mark mod_perl 2 stable until it stops being 1.99 and becomes 2.0.  Does adding "PerlModule Apache2" to your httpd.conf help anything here?
Comment 3 Michael Cummings (RETIRED) gentoo-dev 2004-05-01 13:27:55 UTC
mholzer never responded, this has been left open for 6 months, closing for age.