Thanks very much for the help. I was actually using Apache2::Request->new(), instead of Apache::Request - just mis-typed in my posting.

Additional information you asked for:

httpd2 version = 2.0.53
mod_perl version = 2.0.2
libapreq2 version =  2.06-dev
OS = Suse 9.3 w/ 2.6.11 kernel
used make for mod_perl and libapreq2.

Perl -V :
------------------
Summary of my perl5 (revision 5 version 8 subversion 6) configuration:
 Platform:
   osname=linux, osvers=2.6.9, archname=i586-linux-thread-multi
uname='linux salieri 2.6.9 #1 smp fri jan 14 15:41:33 utc 2005 i686 athlon i386 gnulinux ' config_args='-ds -e -Dprefix=/usr -Dvendorprefix=/usr -Dinstallusrbinperl -Dusethreads -Di_db -Di_dbm -Di_ndbm -Di_gdbm -Duseshrplib=true -Doptimize=-O2 -march=i586 -mcpu=i686 -fmessage-length=0 -Wall -g -Wall -pipe'
   hint=recommended, useposix=true, d_sigaction=define
usethreads=define use5005threads=undef useithreads=define usemultiplicity=define
   useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
   use64bitint=undef use64bitall=undef uselongdouble=undef
   usemymalloc=n, bincompat5005=undef
 Compiler:
cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O2 -march=i586 -mcpu=i686 -fmessage-length=0 -Wall -g -Wall -pipe', cppflags='-D_REENTRANT -D_GNU_SOURCE -DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing -pipe' ccversion='', gccversion='3.3.5 20050117 (prerelease) (SUSE Linux)', gccosandvers=''
   intsize=4, longsize=4, ptrsize=4, doublesize=8, byteorder=1234
   d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=12
ivtype='long', ivsize=4, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
   alignbytes=4, prototype=define
 Linker and Libraries:
   ld='cc', ldflags =''
   libpth=/lib /usr/lib /usr/local/lib
   libs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
   perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc
   libc=, so=so, useshrplib=true, libperl=libperl.so
   gnulibc_version='2.3.4'
 Dynamic Linking:
dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E -Wl,-rpath,/usr/lib/perl5/5.8.6/i586-linux-thread-multi/CORE'
   cccdlflags='-fPIC', lddlflags='-shared'


Characteristics of this binary (from libperl):
Compile-time options: DEBUGGING MULTIPLICITY USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
 Built under linux
 Compiled at Mar 19 2005 17:34:48
 @INC:
   /usr/lib/perl5/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/5.8.6
   /usr/lib/perl5/site_perl/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/site_perl/5.8.6
   /usr/lib/perl5/site_perl
   /usr/lib/perl5/vendor_perl/5.8.6/i586-linux-thread-multi
   /usr/lib/perl5/vendor_perl/5.8.6
   /usr/lib/perl5/vendor_perl
-----------

I added the modules you suggested to startup.pl. It coughed on the APR files that didn't get installed from libapreq2 (e.g. Param.pm). I'm thinking I should just copy all the .pm files from libapreq2 over to where they should be. Root-causing the thing would feel good, but I'm not sure it's worth the effort.

-Joshua

Joshua H wrote:

1) When I try to call Apache::Request methods (like new() ), I get an

You want Apache2::Request->new()
or better yet
APR::Request::Apache2->new()

See:
http://httpd.apache.org/apreq/docs/libapreq2/group__apreq__xs__apr__request__apache2.html


error to the effect that it can't find Apache2/Request.pm in @INC. And indeed although it is in the temp directory that I built libapreq2 in, it didn't get installed into @INC even though there were no errors from 'make' or 'make install' . I can copy it (and the .pm files under APR as well which also didn't get installed) into @INC directories, but I'm wondering if this is a symptom of a bigger problem.

They should have been installed.
How about some environment information?
httpd version
mod_perl version
liabpreq version
operating and version system
perl -V
Did you make or gmake ?

If you are using mod_perl older then 2.0.0 upgrade before you do anything else.

2) My startup.pl file won't load with the line "Use Apache2();" in it,

You'll probably want this in your startup.pl file for libapreq2
use APR::Request ();
use APR::Request::Apache2 ();
use APR::Request::CGI ();
use APR::Request::Cookie ();
use APR::Request::Error ();
use APR::Request::Hook ();
use APR::Request::Param ();
use APR::Request::Parser ();
use Apache2::Upload ();
use Apache2::Request ();
use Apache2::Cookie ();

also with an error that it isn't in @INC. It's actually in @INC, but under Bundle/. When I include Bundle in @INC, it barfs on a whole bunch of XS stuff. My startup.pl file is copied here in case I've made other errors:

Apache2 is obsoleted.
See here:
http://perl.apache.org/docs/2.0/rename.html


  LoadModule apreq_module    /usr/lib/apache2/mod_apreq2.so

Thats correct.


Reply via email to