Charlie Reddington wrote:
On Aug 28, 2008, at 4:20 PM, Charlie Reddington wrote:

I thought I was building mod_perl as static and apache to allow dynamic modules as well. Is this where my confusion is coming in?

No you're right there - I missed that detail. I just tried a static build on my laptop with the parameters you posted and hit some other APR issues [1] so I haven't been able to replicate this and maybe take a hopeless swing at fixing it :) I might be able to try later on a linux box.

Can't do dynamic, it has to be static as per the rules where I work.

Most of the linux distributions I have seen recently (including OS X) build almost all modules dynamically except for the prefork/mpm worker modules. In my experience, building modules dynamically is "easier" than trying to do a giant static build with lots of modules. I remember the days of trying to configure apache 1.3 with mod_perl, mod_php, etc. build in and shudder - .so's are imho so much easier to build and maintain.


[1]
Configuring Apache/2.0.63 mod_perl/2.0.5-dev Perl/v5.8.8
Can't find apr include/ directory,
use MP_APR_CONFIG=/path/to/apr-config


Thanks,

Charlie

On Aug 28, 2008, at 4:05 PM, Fred Moyer wrote:

Charlie Reddington wrote:
-------------8<---------- Start Bug Report ------------8<----------
1. Problem Description:
I am trying to statically build mod_perl into apache. I start it off by running the command..... perl Makefile.PL MP_USE_STATIC=1 \ MP_AP_PREFIX=/home/charlier/httpd-2.0.63 \ MP_AP_CONFIGURE="--prefix=/usr/local/apache-2.0.63 --enable-ssl --enable-rewrite --enable-so --with-included-apr --enable-cgi"

You are passing options to build both as a static module and as a shared object. The error below was seen about a week ago:

http://www.gossamer-threads.com/lists/modperl/modperl/97894?search_string=modperl_thx_interp_get;#97894

Suggest rebuilding without MP_USE_STATIC=1 and just building the .so

This seems to go well and doesn't throw any red flags. From here I run 'make'. It goes and fails with the following lines. Throughout the make process everything else seems fine. cc -I/home/charlier/mod_perl-2.0.4/src/modules/perl -I/home/charlier/mod_perl-2.0.4/xs -I/home/charlier/httpd-2.0.63/include -I/home/charlier/httpd-2.0.63/srclib/apr/include -I/home/charlier/httpd-2.0.63/srclib/apr-util/include -I/home/charlier/httpd-2.0.63/os/unix -fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm -I/usr/local/lib/perl5/5.8.8/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 -c modperl_exports.c modperl_exports.c:1169: error: `modperl_thx_interp_get' undeclared here (not in a function) modperl_exports.c:1173: error: `modperl_thx_interp_set' undeclared here (not in a function)
make[1]: *** [modperl_exports.o] Error 1
make[1]: Leaving directory `/home/charlier/mod_perl-2.0.4/src/modules/perl'
make: *** [modperl_lib] Error 2
I have tried with the current version of mod-perl and the latest. I get the same result every time. I have also tried the following versions of apache - 2.0.63, 2.2.6, 2.2.9 all fail with the similar message. The only other thing to note is that perl was built with ccflags='fPIC' but the rest is pretty much the accepted defaults in regards to an x86_64 system.
2. Used Components and their Configuration:
*** mod_perl version 2.000004
*** using /home/charlier/mod_perl-2.0.4/lib/Apache2/BuildConfig.pm
*** Makefile.PL options:
MP_APR_LIB      => aprext
MP_AP_CONFIGURE => --prefix=/usr/local/apache-2.0.63 --enable-ssl --enable-rewrite --enable-so --with-included-apr --enable-cgi
MP_AP_PREFIX    => /home/charlier/httpd-2.0.63
MP_COMPAT_1X    => 1
MP_GENERATE_XS  => 1
MP_LIBNAME      => mod_perl
MP_USE_STATIC   => 1
*** The httpd binary was not found
*** (apr|apu)-config linking info
-L/home/charlier/httpd-2.0.63/srclib/apr-util/.libs
-L/home/charlier/httpd-2.0.63/srclib/apr-util -laprutil-0 -lexpat
-L/home/charlier/httpd-2.0.63/srclib/apr/.libs
-L/home/charlier/httpd-2.0.63/srclib/apr -lapr-0 -lrt -lm -lcrypt -lnsl -lpthread -ldl
*** /usr/local/bin/perl5.8.8 -V
Summary of my perl5 (revision 5 version 8 subversion 8) configuration:
Platform:
  osname=linux, osvers=2.6.9-67.0.1.elsmp, archname=x86_64-linux
uname='linux serv45.services.cymru.com 2.6.9-67.0.1.elsmp #1 smp fri nov 30 11:57:43 est 2007 x86_64 x86_64 x86_64 gnulinux '
  config_args=''
  hint=recommended, useposix=true, d_sigaction=define
usethreads=undef use5005threads=undef useithreads=undef usemultiplicity=undef
  useperlio=define d_sfio=undef uselargefiles=define usesocks=undef
  use64bitint=define use64bitall=define uselongdouble=undef
  usemymalloc=n, bincompat5005=undef
Compiler:
cc='cc', ccflags ='-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
  optimize='-O2',
cppflags='-fno-strict-aliasing -pipe -Wdeclaration-after-statement -I/usr/local/include -I/usr/include/gdbm' ccversion='', gccversion='3.4.6 20060404 (Red Hat 3.4.6-9)', gccosandvers=''
  intsize=4, longsize=8, ptrsize=8, doublesize=8, byteorder=12345678
  d_longlong=define, longlongsize=8, d_longdbl=define, longdblsize=16
ivtype='long', ivsize=8, nvtype='double', nvsize=8, Off_t='off_t', lseeksize=8
  alignbytes=8, prototype=define
Linker and Libraries:
  ld='cc', ldflags =' -L/usr/local/lib'
  libpth=/usr/local/lib /lib /usr/lib
  libs=-lnsl -ldl -lm -lcrypt -lutil -lc
  perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc
  libc=/lib/libc-2.3.4.so, so=so, useshrplib=false, libperl=libperl.a
  gnulibc_version='2.3.4'
Dynamic Linking:
  dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E'
  cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib'
Characteristics of this binary (from libperl):
Compile-time options: PERL_MALLOC_WRAP USE_64_BIT_ALL USE_64_BIT_INT
                      USE_LARGE_FILES USE_PERLIO
Built under linux
Compiled at Aug 28 2008 16:56:21
%ENV:
  PERL_LWP_USE_HTTP_10="1"
@INC:
  /usr/local/lib/perl5/5.8.8/x86_64-linux
  /usr/local/lib/perl5/5.8.8
  /usr/local/lib/perl5/site_perl/5.8.8/x86_64-linux
  /usr/local/lib/perl5/site_perl/5.8.8
  /usr/local/lib/perl5/site_perl
  .
*** Packages of interest status:
Apache2            : -
Apache2::Request   : -
CGI                : 3.15
ExtUtils::MakeMaker: 6.30
LWP                : -
mod_perl           : -
mod_perl2          : -
3. This is the core dump trace: (if you get a core dump):
[CORE TRACE COMES HERE]
This report was generated by ./REPORT on Thu Aug 28 20:34:21 2008 GMT.
-------------8<---------- End Bug Report --------------8<----------
Note: Complete the rest of the details and post this bug report to
modperl <at> perl.apache.org. To subscribe to the list send an empty
email to [EMAIL PROTECTED]


Reply via email to