Am Mittwoch, den 08.11.2006, 12:39 -0500 schrieb Perrin Harkins:
> > It can not be my perl itself, because the standalone server is running,
> > or am i wrong?
>
> It probably means that your mod_perl was not compiled with the same perl
> that you're running the standalone server on. Either that, or Catalyst
> doesn't run this line when you use it under the standalone server.
>
Ok, I testet this:
perl -e "use Scalar::Util qw/weaken blessed/;"
Runs without any complains. Used directly in the script started by
Apache writes the same message to errorlog:
---------------------
[Thu Nov 09 10:37:23 2006] [error] Weak references are not implemented
in the version of perl
at /etc/apache2/modules.d/apache2-mod_perl-startup.pl line 24\nBEGIN
failed--compilation aborted
at /etc/apache2/modules.d/apache2-mod_perl-startup.pl line
24.\nCompilation failed in require at (eval 2) line 1.\n
---------------------
So that means, that mod_perl is not compiled with the same perl as is
used by the standalone server!?
I looked a bit further to verify. First an ldd on mod_perl.so used by
Apache:
----------------------
mobile-mf modules # ldd mod_perl.so
linux-gate.so.1 => (0xffffe000)
libperl.so.1 => /usr/lib/libperl.so.1 (0xb7ea5000)
libpthread.so.0 => /lib/tls/libpthread.so.0 (0xb7e93000)
libnsl.so.1 => /lib/libnsl.so.1 (0xb7e7e000)
libdl.so.2 => /lib/libdl.so.2 (0xb7e7a000)
libm.so.6 => /lib/tls/libm.so.6 (0xb7e58000)
libcrypt.so.1 => /lib/libcrypt.so.1 (0xb7e2b000)
libutil.so.1 => /lib/libutil.so.1 (0xb7e26000)
libc.so.6 => /lib/tls/libc.so.6 (0xb7d13000)
/lib/ld-linux.so.2 (0x80000000)
-----------------------
Now a look at perl itself:
/usr/lib/perl5/5.8.8/i686-linux/CORE/libperl.so.1.5.8
is identical (a link to the same file).
Can you give me any hints what else I could try to find out if mod_perl
uses another version of perl?
> > I already tried to recompile mod_perl without success.
>
> We can help you with that, if you want to try again.
Sorry, I meant that I recompiled mod_perl but this did not solve the
problem :-)
>
> > I
> > think the problem must be located in mod_perl or its configuration.
>
> No, this can't be modified except by recompiling perl itself.
>
Now perhaps the "perl Makefile.PL" call done by the gentoo-portage could
help:
-----------------
perl Makefile.PL \
PREFIX=${D}/usr \
MP_TRACE=1 \
MP_DEBUG=1 \
MP_USE_DSO=1 \
MP_APXS=/usr/sbin/apxs2 \
CCFLAGS="${CFLAGS} -fPIC" \
TMPDIR=${T} \
INSTALLDIRS=vendor
------------------
Does this give any hints?
Thank you,
Michael