Hi! Please help! Regards, CN -------------8<---------- Start Bug Report ------------8<---------- 1. Problem Description:
httpd starts perfectly without mod_perl. When "LoadModule mod_Perl modules/mod_perl.so" is included in http.conf, httpd fails to start and reports the following message: Syntax error on line 186 of /opt/apache/conf/httpd.conf: Can't locate API module structure `mod_perl' in file /opt/apache/modules/mod_perl.so: /opt/apache/lib/libapr-0.so.0: undefined symbol: mod_perl I am not sure if the following activity I did causes this problem: I am running Debian woody which installed perl 5.6.1 under /usr/bin/ and /usr/lib/perl/. I upgraded perl in brutal-force way. Since dpkg does not allow me to remove package perl, I did "rm /usr/bin/perl" and then built and installed perl from source. The build installed perl in /usr/local/bin/ and /usr/local/lib/perl5/. Then I did "ln -s /usr/local/bin/perl /usr/bin/perl". 2. Used Components and their Configuration: *** mod_perl version 1.9910 *** using /tmp/mod_perl-1.99_10/lib/Apache/BuildConfig.pm *** Makefile.PL options: MP_AP_PREFIX => /opt/apache MP_COMPAT_1X => 1 MP_GENERATE_XS => 1 MP_LIBNAME => mod_perl MP_USE_DSO => 1 MP_USE_STATIC => 1 *** /opt/apache/bin/httpd -V Server version: Apache/2.0.47 Server built: Oct 23 2003 23:17:32 Server's Module Magic Number: 20020903:4 Architecture: 32-bit Server compiled with.... -D APACHE_MPM_DIR="server/mpm/prefork" -D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) -D APR_USE_SYSVSEM_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="/opt/apache" -D SUEXEC_BIN="/opt/apache/bin/suexec" -D DEFAULT_PIDLOG="logs/httpd.pid" -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" -D DEFAULT_LOCKFILE="logs/accept.lock" -D DEFAULT_ERRORLOG="logs/error_log" -D AP_TYPES_CONFIG_FILE="conf/mime.types" -D SERVER_CONFIG_FILE="conf/httpd.conf" *** /usr/local/bin/perl -V Summary of my perl5 (revision 5.0 version 8 subversion 1) configuration: Platform: osname=linux, osvers=2.4.20, archname=i586-linux uname='linux rps.com.tw 2.4.20 #2 wed feb 26 01:50:07 cst 2003 i586 unknown ' config_args='-de' 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=undef use64bitall=undef uselongdouble=undef usemymalloc=n, bincompat5005=undef Compiler: cc='cc', ccflags ='-fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', optimize='-O3', cppflags='-fno-strict-aliasing -I/usr/local/include' ccversion='', gccversion='2.95.4 20011002 (Debian prerelease)', 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 =' -L/usr/local/lib' libpth=/usr/local/lib /lib /usr/lib libs=-lnsl -lgdbm -ldbm -ldl -lm -lcrypt -lutil -lc perllibs=-lnsl -ldl -lm -lcrypt -lutil -lc libc=/lib/libc-2.2.5.so, so=so, useshrplib=false, libperl=libperl.a gnulibc_version='2.2.5' Dynamic Linking: dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-rdynamic' cccdlflags='-fpic', lddlflags='-shared -L/usr/local/lib' Characteristics of this binary (from libperl): Compile-time options: USE_LARGE_FILES Built under linux Compiled at Oct 22 2003 22:37:50 %ENV: PERL_LWP_USE_HTTP_10="1" @INC: /usr/local/lib/perl5/5.8.1/i586-linux /usr/local/lib/perl5/5.8.1 /usr/local/lib/perl5/site_perl/5.8.1/i586-linux /usr/local/lib/perl5/site_perl/5.8.1 /usr/local/lib/perl5/site_perl . 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 Oct 23 16:26:27 2003 GMT. -------------8<---------- End Bug Report --------------8<---------- make test fails reporting: compat/apache_file.t, Total=18, Fail=9, List of Failed=10-18 Next is file t/logs/error-log [Fri Oct 24 09:59:02 2003] [info] mod_perl: using Perl HASH_SEED: 2058718592 END in modperl_extra.pl, pid=6052 [Fri Oct 24 09:59:05 2003] [info] mod_perl: using Perl HASH_SEED: 4206202240 [Fri Oct 24 09:59:05 2003] [notice] Apache/2.0.47 (Unix) mod_perl/1.99_10 Perl/v5.8.1 configured -- resuming normal operations [Fri Oct 24 09:59:05 2003] [info] Server built: Oct 23 2003 23:17:32 [Fri Oct 24 09:59:05 2003] [debug] prefork.c(1037): AcceptMutex: sysvsem (default: sysvsem) [Fri Oct 24 09:59:07 2003] [error] server reached MaxClients setting, consider raising the MaxClients setting [Fri Oct 24 09:59:24 2003] [info] [client 127.0.0.1] TestAPI::aplog test in progress This log message comes with no header *** The following warn entry is expected and it is harmless *** [Fri Oct 24 09:59:24 2003] [debug] /tmp/mod_perl/t/response/TestAPI/aplog.pm(48): log_serror test ok *** The following warn entry is expected and it is harmless *** [Fri Oct 24 09:59:24 2003] [debug] /tmp/mod_perl/t/response/TestAPI/aplog.pm(52): (20014)Error string not specified yet: log_serror test 2 ok *** The following error entry is expected and it is harmless *** [Fri Oct 24 09:59:24 2003] [crit] [client 127.0.0.1] (20007)No time was provided and one was required.: log_rerror test ok *** The following error entry is expected and it is harmless *** [Fri Oct 24 09:59:24 2003] [error] $r->log_error test ok *** The following error entry is expected and it is harmless *** [Fri Oct 24 09:59:24 2003] [error] $s->log_error test ok [Fri Oct 24 09:59:24 2003] [debug] /tmp/mod_perl/t/response/TestAPI/aplog.pm(73): TestAPI::aplog test done [Fri Oct 24 09:59:24 2003] [warn] ApacheApache->warn test ok [Fri Oct 24 09:59:24 2003] [warn] $s->warn test ok *** The following error entry is expected and it is harmless *** [Fri Oct 24 09:59:59 2003] [error] Apache::log_error test ok [Fri Oct 24 10:00:01 2003] [error] [client 127.0.0.1] print() on closed filehandle GEN4 at /tmp/mod_perl/t/response/TestCompat/apache_file.pm line 75. *** The following error entry is expected and it is harmless *** [Fri Oct 24 10:00:29 2003] [error] [client 127.0.0.1] Undefined subroutine &TestError::runtime::no_such_func called at /tmp/mod_perl/t/response/TestError/runtime.pm line 19. *** The following error entry is expected and it is harmless *** [Fri Oct 24 10:00:30 2003] [error] failed to resolve handler `TestError::syntax' [Fri Oct 24 10:00:30 2003] [error] [client 127.0.0.1] syntax error at /tmp/mod_perl/t/response/TestError/syntax.pm line 22, near "\;" Compilation failed in require at (eval 111) line 3. [echo_filter] get_brigade: Success *** The following error entry is expected and it is harmless *** [Fri Oct 24 10:01:21 2003] [error] [client 127.0.0.1] File does not exist: /tmp/mod_perl/t/htdocs/nope *** The following error entry is expected and it is harmless *** [Fri Oct 24 10:01:52 2003] [error] [client 127.0.0.1] need AuthName: /TestModperl__setauth [Fri Oct 24 10:02:09 2003] [info] Child process pid=6055 is exiting [Fri Oct 24 10:02:09 2003] [info] Child process pid=6058 is exiting [Fri Oct 24 10:02:09 2003] [info] removed PID file /tmp/mod_perl/t/logs/httpd.pid (pid=6054) [Fri Oct 24 10:02:09 2003] [notice] caught SIGTERM, shutting down END in modperl_extra.pl, pid=6054 -- http://www.fastmail.fm - A no graphics, no pop-ups email service