Re: weird error after upgrade of cpan libs

Fred Moyer <[email protected]> Wed, 2 Feb 2011 13:15:43 -0800
Newsgroups gmane.comp.apache.apreq
Message-ID <[email protected]>
On Wed, Feb 2, 2011 at 1:13 PM, Mark Hedges <[email protected]> wrote:
>
> Everything was working (as far as I knew) until I ran the
> CPAN upgrade of ExtUtils::CBuilder and Module::Build.
>
> Hrmm, the CGI example may be bad, I picked that up from a
> search result... $r is undefined. =A0Handlers loaded from
> apache conf work fine, so this does not appear to affect
> production as far as I can tell right now.
>
> `./Build test` shows the error, but `prove -r t` does not.
>
> I use the CentOS binary packages for perl, mod_perl, httpd,
> etc. =A0I built libapreq2 by hand, but it was working prior to
> doing these CPAN upgrades. =A0mod_perl seems to work
> otherwise.

Can you use the apreq rpm?  Mixing rpms and source packages can give
varied results with Perl (from the mouth of the fedora maintainer a
few years ago at YAPC).


>
> Mark
>
>
> On Wed, 2 Feb 2011, Fred Moyer wrote:
>
>> Did you build mod_perl with /usr/bin/perl or another binary?
>>
>> Did you 'LoadModule perl_module =A0 =A0 =A0 =A0modules/mod_perl.so'?
>>
>> This looks like more of a mod_perl issue than apreq.
>>
>> On Wed, Feb 2, 2011 at 12:44 PM, Mark Hedges <[email protected]> wrote=
:
>> >
>> > I upgraded some CPAN libs including Module::Build and
>> > ExtUtils::CBuilder and started running into some problems.
>> >
>> > https://rt.cpan.org/Public/Bug/Display.html?id=3D65382
>> >
>> > Hrmm, this seems to also affect cgi's in production:
>> >
>> > [Wed Feb 02 12:41:48 2011] [error] [client 64.22.103.163] /usr/bin/per=
l: symbol lookup error: /usr/lib/perl5/site_perl/5.8.8/i386-linux-thread-mu=
lti/auto/APR/Request/Apache2/Apache2.so: undefined symbol: modperl_xs_sv2re=
quest_rec
>> >
>> > =A0#!/usr/bin/perl
>> >
>> > =A0use strict;
>> > =A0use warnings FATAL =3D> 'all';
>> > =A0use English '-no_match_vars';
>> > =A0use YAML;
>> > =A0use Apache2::Request;
>> > =A0my $r =3D shift;
>> > =A0my $req =3D Apache2::Request->new($r);
>> > =A0$r->print("Content-type: text/plain\n\n");
>> > =A0$r->print(Dump(\%ENV));
>> >
>> > Help?
>> >
>> > Mark
>> >
>> >
>>