perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From steve larson <expedite_...@yahoo.com>
Subject Modperl 2.0 Not finding correct *.conf
Date Fri, 09 Jan 2004 22:01:28 GMT
Hello,

-------------8<---------- Start Bug Report
------------8<----------
1. Problem Description:
 
It appears, it is still finding a 1.3 Apache install
somewhere, and is using this binary, as I have totally
renamed /etc/httpd and re-linked this to a directory
where the Apache 2.x exists: ie. /usr/local/apache2
Here are the particulars:

I am also working on RedHat 9 and have come across the
following technologies, am working on:
perl 5.8
mysql 4.x
DBD-2.9003
DBI-1.38
Apache 2.x
apr-0.9.5
apu
modperl 2.0
php 4.x
java 2.x
ssh

Apache Source Base = /tmp/cc/httpd-2.0.48
Apache Installed Binary for apxs =
/usr/local/apache2/apxs
/etc/httpd is a symbolic link to /usr/local/apache2

Contents of script named doit:
#!/bin/bash
cd /var/modperl-2.0
perl Makefile.PL MP_AP_PREFIX=/tmp/cc/httpd-2.0.48 \
 MP_APXS=/usr/local/apache2/bin/apxs MP_INST_APACHE2=1
MP_DEBUG=1

Execution of Script ./doit Produces:
[root@gwbush cc]# ./doit
Reading Makefile.PL args from @ARGV
   MP_AP_PREFIX = /tmp/cc/httpd-2.0.48
   MP_APXS = /usr/local/apache2/bin/apxs
   MP_INST_APACHE2 = 1
   MP_DEBUG = 1
Configuring Apache/2.0.48 mod_perl/1.99_13-dev
Perl/v5.8.0
*** file /etc/httpd/conf.d/*.conf does not exist
    generating script t/TEST
Writing Makefile for Apache::Test
    generating script t/TEST
Writing Makefile for ModPerl::Registry
Writing Makefile for APR::Base64
Writing Makefile for APR::Brigade
Writing Makefile for APR::Bucket
Writing Makefile for APR::Date
Writing Makefile for APR::Finfo
Writing Makefile for APR::NetLib
Writing Makefile for APR::OS
Writing Makefile for APR::Pool
Writing Makefile for APR::SockAddr
Writing Makefile for APR::Socket
Writing Makefile for APR::String
Writing Makefile for APR::Table
Writing Makefile for APR::ThreadMutex
Writing Makefile for APR::URI
Writing Makefile for APR::UUID
Writing Makefile for APR::Util
Writing Makefile for APR
Writing Makefile for Apache::Access
Writing Makefile for Apache::CmdParms
Writing Makefile for Apache::Command
Writing Makefile for Apache::Connection
Writing Makefile for Apache::Directive
Writing Makefile for Apache::Filter
Writing Makefile for Apache::FilterRec
Writing Makefile for Apache::HookRun
Writing Makefile for Apache::Log
Writing Makefile for Apache::MPM
Writing Makefile for Apache::Module
Writing Makefile for Apache::Process
Writing Makefile for Apache::RequestIO
Writing Makefile for Apache::RequestRec
Writing Makefile for Apache::RequestUtil
Writing Makefile for Apache::Response
Writing Makefile for Apache::Server
Writing Makefile for Apache::ServerUtil
Writing Makefile for Apache::SubProcess
Writing Makefile for Apache::SubRequest
Writing Makefile for Apache::URI
Writing Makefile for Apache::Util
Writing Makefile for Apache
Writing Makefile for ModPerl::Global
Writing Makefile for ModPerl::Util
Writing Makefile for ModPerl
Writing Makefile for ModPerl::WrapXS
Writing Makefile for APR
Writing Makefile for APR::Const
Writing Makefile for APR::PerlIO
Writing Makefile for APR
Writing Makefile for Apache::Const
Writing Makefile for Apache
Writing Makefile for ModPerl::Const
Writing Makefile for ModPerl
Writing Makefile for ModPerl::XS
Writing Makefile for mod_perl
*** mod_perl dso library will be built as mod_perl.so
*** mod_perl static library will be built as
mod_perl.a
*** You'll need to add the following to httpd.conf:
***  LoadModule perl_module modules/mod_perl.so
 
*** Apache Perl modules will be installed relative to
Apache2/
*** Don't forget to:
*** - configure 'PerlModule Apache2' in httpd.conf
*** - or 'use Apache2 ();' in a startup script
*** file /etc/httpd/conf.d/*.conf does not exist
[root@gwbush cc]#

At least I think I am this far ....
 
2. Used Components and their Configuration:
 
*** mod_perl version 1.9913
 
*** using lib/Apache/BuildConfig.pm
*** Makefile.PL options:
  MP_APXS         => /usr/local/apache2/bin/apxs
  MP_AP_PREFIX    => /tmp/cc/httpd-2.0.48
  MP_COMPAT_1X    => 1
  MP_DEBUG        => 1
  MP_GENERATE_XS  => 1
  MP_INST_APACHE2 => 1
  MP_LIBNAME      => mod_perl
  MP_TRACE        => 1
  MP_USE_DSO      => 1
  MP_USE_STATIC   => 1

*** /usr/local/apache2/bin/ps -V
Server version: Apache/2.0.48
Server built:   Dec  4 2003 20:41:23
Server's Module Magic Number: 20020903:4
Architecture:   32-bit
Server compiled with....
 -D APACHE_MPM_DIR="server/mpm/worker"
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_PROC_PTHREAD_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D HTTPD_ROOT="/usr/local/apache2"
 -D SUEXEC_BIN="/usr/local/apache2/bin/suexec"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/ps.conf"

*** /usr/bin/perl -V
Summary of my perl5 (revision 5.0 version 8 subversion
0) configuration:
  Platform:
    osname=linux, osvers=2.4.21-1.1931.2.382.entsmp,
archname=i386-linux-thread-multi
    uname='linux str'
    config_args='-des -Doptimize=-O2 -g -pipe
-march=i386 -mcpu=i686 -Dmyhostname=localhost
-Dperladmin=root@localhost -Dcc=gcc -Dcf_by=Red Hat,
Inc. -Dinstallprefix=/usr -Dprefix=/usr
-Darchname=i386-linux -Dvendorprefix=/usr
-Dsiteprefix=/usr -Dotherlibdirs=/usr/lib/perl5/5.8.0
-Duseshrplib -Dusethreads -Duseithreads
-Duselargefiles -Dd_dosuid -Dd_semctl_semun -Di_db
-Ui_ndbm -Di_gdbm -Di_shadow -Di_syslog -Dman3ext=3pm
-Duseperlio -Dinstallusrbinperl -Ubincompat5005
-Uversiononly -Dpager=/usr/bin/less -isr'
    hint=recommended, useposix=true,
d_sigaction=define
    usethreads=define use5005threads=undef'
 useithreads=define usemultiplicity=
    useperlio= d_sfio=undef uselargefiles=define
usesocks=undef
    use64bitint=undef use64bitall=un uselongdouble=
    usemymalloc=, bincompat5005=undef
  Compiler:
    cc='gcc', ccflags ='-D_REENTRANT -D_GNU_SOURCE
-DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing
-I/usr/local/include -D_LARGEFILE_SOURCE
-D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm',
    optimize='',
    cppflags='-D_REENTRANT -D_GNU_SOURCE
-DTHREADS_HAVE_PIDS -DDEBUGGING -fno-strict-aliasing
-I/usr/local/include -I/usr/include/gdbm'
    ccversion='', gccversion='3.2.2 20030222 (Red Hat
Linux 3.2.2-5)', gccosandvers=''
gccversion='3.2.2 200302'
    intsize=r, longsize=r, ptrsize=5, doublesize=8,
byteorder=1234
    d_longlong=define, longlongsize=8,
d_longdbl=define, longdblsize=12
    ivtype='long'
k', ivsize=4'
ivtype='l, nvtype='double'
o_nonbl', nvsize=, Off_t='', lseeksize=8
    alignbytes=4, prototype=define
  Linker and Libraries:
    ld='gcc'
l', ldflags =' -L/u'
    libpth=/usr/local/lib /lib /usr/lib
    libs=-lnsl -lgdbm -ldb -ldl -lm -lpthread -lc
-lcrypt -lutil
    perllibs=
    libc=/lib/libc-2.3.2.so, so=so, useshrplib=true,
libperl=libper
    gnulibc_version='2.3.2'
  Dynamic Linking:
    dlsrc=dl_dlopen.xs, dlext=so', d_dlsymun=undef,
ccdlflags='-rdynamic -Wl,-rp
ath,/usr/lib/perl5/5.8.0/i386-linux-thread-multi/CORE'
    cccdlflags='-fPIC'
ccdlflags='-rdynamic -Wl,-rpath,/usr/lib/perl5',
lddlflags='s Unicode/Normalize
XS/A'
 
 
Characteristics of this binary (from libperl):
  Compile-time options: DEBUGGING MULTIPLICITY
USE_ITHREADS USE_LARGE_FILES PERL_IMPLICIT_CONTEXT
  Locally applied patches:
        MAINT18379
  Built under linux
  Compiled at Aug 13 2003 11:47:58
  %ENV:
    PERL_LWP_USE_HTTP_10="1"
  @INC:
    /usr/lib/perl5/5.8.0/i386-linux-thread-multi
    /usr/lib/perl5/5.8.0
   
/usr/lib/perl5/site_perl/5.8.0/i386-linux-thread-multi
    /usr/lib/perl5/site_perl/5.8.0
    /usr/lib/perl5/site_perl
   
/usr/lib/perl5/vendor_perl/5.8.0/i386-linux-thread-multi
    /usr/lib/perl5/vendor_perl/5.8.0
    /usr/lib/perl5/vendor_perl
    /usr/lib/perl5/5.8.0/i386-linux-thread-multi
    /usr/lib/perl5/5.8.0
    .
 
*** Packages of interest status:
 
Apache::Request: -
CGI            : -
LWP            : 5.65
mod_perl       : 1.9907
 
 
3. This is the core dump trace: (if you get a core
dump):
 
  [CORE TRACE COMES HERE]
 
This report was generated by t/REPORT on Fri Jan  9
21:03:06 2004 GMT.
 
-------------8<---------- End Bug Report
--------------8<----------


 I require your expertise in building modperl 2.0
, I have hit a snag.

Here are the particulars:

I am also working on RedHat 9 and have come across the
following technologies, am working on:
perl 5.8
mysql 4.x
DBD-2.9003
DBI-1.38
Apache 2.x
apr-0.9.5
apu
modperl 2.0
php 4.x
java 2.x
ssh

Attempting to create a small e-commerce site.

Apache Source Base = /tmp/cc/httpd-2.0.48
Apache Installed Binary for apxs =
/usr/local/apache2/apxs
/etc/httpd is a symbolic link to /usr/local/apache2

Contents of script named doit:
#!/bin/bash
cd /var/modperl-2.0
perl Makefile.PL MP_AP_PREFIX=/tmp/cc/httpd-2.0.48 \
 MP_APXS=/usr/local/apache2/bin/apxs MP_INST_APACHE2=1
MP_DEBUG=1

Execution of Script ./doit Produces:
[root@gwbush cc]# ./doit
Reading Makefile.PL args from @ARGV
   MP_AP_PREFIX = /tmp/cc/httpd-2.0.48
   MP_APXS = /usr/local/apache2/bin/apxs
   MP_INST_APACHE2 = 1
   MP_DEBUG = 1
Configuring Apache/2.0.48 mod_perl/1.99_13-dev
Perl/v5.8.0
*** file /etc/httpd/conf.d/*.conf does not exist
    generating script t/TEST
Writing Makefile for Apache::Test
    generating script t/TEST
Writing Makefile for ModPerl::Registry
Writing Makefile for APR::Base64
Writing Makefile for APR::Brigade
Writing Makefile for APR::Bucket
Writing Makefile for APR::Date
Writing Makefile for APR::Finfo
Writing Makefile for APR::NetLib
Writing Makefile for APR::OS
Writing Makefile for APR::Pool
Writing Makefile for APR::SockAddr
Writing Makefile for APR::Socket
Writing Makefile for APR::String
Writing Makefile for APR::Table
Writing Makefile for APR::ThreadMutex
Writing Makefile for APR::URI
Writing Makefile for APR::UUID
Writing Makefile for APR::Util
Writing Makefile for APR
Writing Makefile for Apache::Access
Writing Makefile for Apache::CmdParms
Writing Makefile for Apache::Command
Writing Makefile for Apache::Connection
Writing Makefile for Apache::Directive
Writing Makefile for Apache::Filter
Writing Makefile for Apache::FilterRec
Writing Makefile for Apache::HookRun
Writing Makefile for Apache::Log
Writing Makefile for Apache::MPM
Writing Makefile for Apache::Module
Writing Makefile for Apache::Process
Writing Makefile for Apache::RequestIO
Writing Makefile for Apache::RequestRec
Writing Makefile for Apache::RequestUtil
Writing Makefile for Apache::Response
Writing Makefile for Apache::Server
Writing Makefile for Apache::ServerUtil
Writing Makefile for Apache::SubProcess
Writing Makefile for Apache::SubRequest
Writing Makefile for Apache::URI
Writing Makefile for Apache::Util
Writing Makefile for Apache
Writing Makefile for ModPerl::Global
Writing Makefile for ModPerl::Util
Writing Makefile for ModPerl
Writing Makefile for ModPerl::WrapXS
Writing Makefile for APR
Writing Makefile for APR::Const
Writing Makefile for APR::PerlIO
Writing Makefile for APR
Writing Makefile for Apache::Const
Writing Makefile for Apache
Writing Makefile for ModPerl::Const
Writing Makefile for ModPerl
Writing Makefile for ModPerl::XS
Writing Makefile for mod_perl
*** mod_perl dso library will be built as mod_perl.so
*** mod_perl static library will be built as
mod_perl.a
*** You'll need to add the following to httpd.conf:
***  LoadModule perl_module modules/mod_perl.so
 
*** Apache Perl modules will be installed relative to
Apache2/
*** Don't forget to:
*** - configure 'PerlModule Apache2' in httpd.conf
*** - or 'use Apache2 ();' in a startup script
*** file /etc/httpd/conf.d/*.conf does not exist
[root@gwbush cc]#

[root@gwbush perl]#
[root@gwbush perl]#cat /etc/init.d/httpd2
#!/bin/bash
#
# Startup script for the Apache 2.X Web Server
#
# chkconfig: - 85 15
# description: Apache is a World Wide Web server.  It
is used to serve \
#              HTML files and CGI.
# processname: ps
# pidfile: /usr/local/apache2/logs/httpd.pid
# config: /usr/local/apache2/conf/httpd.conf
 
# Source function library.
. /etc/rc.d/init.d/functions
 
if [ -f /etc/sysconfig/httpd ]; then
        . /etc/sysconfig/httpd
fi
 
# This will prevent initlog from swallowing up a
pass-phrase prompt if
# mod_ssl needs a pass-phrase from the user.
INITLOG_ARGS=""
 
# Set HTTPD=/usr/sbin/httpd.worker in
/etc/sysconfig/httpd to use a server
# with the thread-based "worker" MPM; BE WARNED that
some modules may not# work correctly with a
thread-based MPM; notably PHP will refuse to start.
 
# Path to the apachectl script, server binary, and
short-form for messages.
apachectl=/usr/local/apache2/bin/apachectl
httpd=/usr/local/apache2/bin/ps
prog=ps
pidfile=/usr/local/apache2/logs/httpd.pid
RETVAL=0
 
# check for 1.3 configuration
check13 () {
        CONFFILE=/usr/local/apache2/conf/httpd.conf
       
GONE="(ServerType|BindAddress|Port|AddModule|ClearModuleList|"
       
GONE="${GONE}AgentLog|RefererLog|RefererIgnore|FancyIndexing|"
        GONE="${GONE}AccessConfig|ResourceConfig)"
        if grep -Eiq "^[[:space:]]*($GONE)" $CONFFILE;
then
                echo
                echo 1>&2 " Apache 1.3 configuration
directives found"
                echo 1>&2 " please read
/usr/share/doc/httpd-2.0.40/migration.html"
                failure "Apache 1.3 config directives
test"
                echo
                exit 1
        fi
}
 
 
# The semantics of these two functions differ from the
way apachectl does# things -- attempting to start
while running is a failure, and shutdown
# when not running is also a failure.  So we just do
it the way init scripts
# are expected to behave here.
start() {
        echo -n $"Starting $prog: "
        check13 || exit 1
        daemon $httpd $OPTIONS
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && touch
/var/lock/subsys/httpd
        return $RETVAL
}
stop() {
        echo -n $"Stopping $prog: "
        killproc $httpd
        RETVAL=$?
        echo
        [ $RETVAL = 0 ] && rm -f
/var/lock/subsys/httpd $pidfile
}
reload() {
        echo -n $"Reloading $prog: "
        check13 || exit 1
        killproc $httpd -HUP
        RETVAL=$?
        echo
}
 
# See how we were called.
case "$1" in
  start)
        start
        ;;
  stop)
        stop
        ;;
  status)
        status $httpd
        RETVAL=$?
        ;;
  restart)
        stop
        start
        ;;
  condrestart)
        if [ -f $pidfile ] ; then
                stop
                start
        fi
        ;;
  reload)
        reload
        ;;
  graceful|help|configtest|fullstatus)
        $apachectl $@
        RETVAL=$?
        ;;
  *)
        echo $"Usage: $prog
{start|stop|restart|condrestart|reload|status|fullstatus|graceful|help|configtest}"
        exit 1
esac
 
exit $RETVAL


RESULTS IN:
===========
>From the ModPerl Tree
=====================
[root@gwbush perl]# /etc/init.d/httpd2 start
Starting ps: ps: module "mod_perl.c" is not compatible
with this version
of Apache (found 20020628, need 20020903).
Please contact the vendor for the correct version.
                                                      
    [FAILED]
[root@gwbush cc]#

>From the Source Tree
=====================
[root@gwbush cc]# /etc/init.d/httpd2 start
Starting ps: ps: module "mod_perl.c" is not compatible
with this version of Apache (found 20020628, need
20020903).
Please contact the vendor for the correct version.


It appears, it is still finding a 1.3 Apache install
somewhere, and is using this binary, as I have totally
renamed /etc/httpd and re-linked this to a directory
where the Apache 2.x exists: ie. /usr/local/apache2

At least I think I am this far ....


Please assist, as I require direction.
Sincerely,
Stephen Larson
expedite_now@yahoo.com




__________________________________
Do you Yahoo!?
Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes
http://hotjobs.sweepstakes.yahoo.com/signingbonus

-- 
Reporting bugs: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html


Mime
View raw message