AP_DEBUG is pure evil if it's making its way into the builds of APR modules.It takes strchr and the like and REPLACES THOSE with ap_strchr. The onlyway round this is to use apr_ stuff instead.
On Thursday, April 9, 2015 10:04 PM, Jie Gao <j....@sydney.edu.au> wrote: Hi Steve I modified xs/Apache2/Module/Apache2__Module.h and replaced ap_strchr with strchr before recompiling. I still got the same error message after that. I re-compiled apache without enabling the maintainer mode: --- CC="gcc"; export CC CFLAGS="-Wall -O3"; export CFLAGS "./configure" \ "--prefix=/usr/local/httpd-2.4.12" \ "--with-included-apr" \ "--with-mpm=worker" \ "--enable-auth-digest" \ "--enable-dav" \ "--enable-expires" \ "--enable-headers" \ "--enable-proxy-html" \ "--enable-xml2enc" \ "--enable-info" \ "--enable-mime-magic" \ "--enable-nonportable-atomics" \ "--enable-proxy" \ "--enable-proxy-balancer" \ "--enable-proxy-http" \ "--enable-rewrite" \ "--enable-so" \ "--enable-ssl" \ "--enable-unique-id" \ "--enable-vhost-alias" \ "--enable-modules=most" \ "--enable-mods-shared=most" \ "--enable-lbmethod-byrequests" \ "--enable-lbmethod-bytraffic" \ "--enable-lbmethod-bybusyness" \ "--enable-lbmethod-heartbeat" \ "--enable-heartmonitor" \ "--enable-watchdog" \ "--enable-ratelimit" \ "--enable-ext-filter" \ "--enable-request" \ "CC=gcc" \ "CFLAGS=-Wall -O3" \ "$@" --- and got mod_perl source code from Trunk again. mod_perl then fails "make test" early on: --- [warning] setting ulimit to allow core files ulimit -c unlimited; /usr/local/bin/perl /usr/local/src/mod_perl-2.0_20150310_0709/t/TEST -clean APACHE_TEST_APXS= APACHE_TEST_PORT= APACHE_TEST_HTTPD= APACHE_TEST_GROUP= APACHE_TEST_USER= \ /usr/local/bin/perl -Iblib/arch -Iblib/lib \ t/TEST -bugreport -verbose=0 [warning] setting ulimit to allow core files ulimit -c unlimited; /usr/local/bin/perl /usr/local/src/mod_perl-2.0_20150310_0709/t/TEST -bugreport -verbose=0 /usr/local/httpd-2.4.12/bin/httpd -d /usr/local/src/mod_perl-2.0_20150310_0709/t -f /usr/local/src/mod_perl-2.0_20150310_0709/t/conf/httpd.conf -D APACHE2 -D PERL_USEITHREADS using Apache/2.4.12 (worker MPM) waiting 300 seconds for server to start: .[Fri Apr 10 08:04:42.875770 2015] [env:warn] [pid 19848:tid 140397405107968] AH01506: PassEnv variable LD_LIBRARY_PATH was undefined [Fri Apr 10 08:04:42.900978 2015] [perl:info] [pid 19848:tid 140397405107968] 6 Apache2:: modules loaded [Fri Apr 10 08:04:42.901033 2015] [perl:info] [pid 19848:tid 140397405107968] 0 APR:: modules loaded [Fri Apr 10 08:04:42.901092 2015] [perl:info] [pid 19848:tid 140397405107968] base server + 32 vhosts ready to run tests ............................................................................................................................................................................................................................................................................................................. waiting 300 seconds for server to start: not ok [ error] giving up after 301 secs. If you think that your system is slow or overloaded try again with a longer timeout value. by setting the environment variable APACHE_TEST_STARTUP_TIMEOUT to a high value (e.g. 600) and repeat the last command. [ error] server failed to start! (please examine t/logs/error_log) +--------------------------------------------------------+ | Please file a bug report: http://perl.apache.org/bugs/ | +--------------------------------------------------------+ make: *** [run_tests] Error 1 [08:09:44]jiegao@XXXX/usr/local/src/mod_perl-2.0_20150310_0709:822> ls -l t/logs/error_log -rw-r--r--. 1 jiegao jiegao 1243 Apr 10 08:04 t/logs/error_log [08:10:01]jiegao@XXXX/usr/local/src/mod_perl-2.0_20150310_0709:823> cat !$ jiegao@XXXX/usr/local/src/mod_perl-2.0_20150310_0709:823> cat t/logs/error_log ******************************************************************************** *** This is a test for Apache2::ServerUtil::server_shutdown_cleanup_register *** *** Following a line consisting only of * characters there should be a line *** *** containing *** *** "cleanup died: testing server_shutdown_cleanup_register". *** *** The next line should then read *** *** "done with server_shutdown_cleanup_register" *** ******************************************************************************** Apache2::ServerUtil: cleanup died: testing server_shutdown_cleanup_register *** done with server_shutdown_cleanup_register *** ******************************************************************************** END in modperl_extra.pl, pid=19848 END in modperl_extra.pl, pid=19848 [Fri Apr 10 08:04:45.465468 2015] [proxy_balancer:emerg] [pid 19852:tid 140397405107968] AH01177: Failed to lookup provider 'shm' for 'slotmem': is mod_slotmem_shm loaded?? [Fri Apr 10 08:04:45.465496 2015] [:emerg] [pid 19852:tid 140397405107968] AH00020: Configuration Failed, exiting --- Adding "--enable-maintainer-mode" and re-compliling apache, I could get "make test" going as before. Regards, Jie * Steve Hay <steve.m....@googlemail.com> wrote: > Date: Thu, 9 Apr 2015 18:27:51 +0100 > From: Steve Hay <steve.m....@googlemail.com> > To: Jie Gao <j....@sydney.edu.au> > CC: "modperl@perl.apache.org" <modperl@perl.apache.org>, mod_perl Dev > <d...@perl.apache.org> > Subject: Re: Trunk: APR.so won't load > > Actually, I don't think there is anything stopping -DAP_DEBUG from > coming through from the httpd config. The change that was made > (r357052) just stopped mod_perl from adding that itself when > MP_MAINTAINER is specified. > > But maybe we do need to filter out -DAP_DEBUG? > Or else stop using ap_strchr() and just use strchr() directly? > > Could you try the latter, since it seems like an easy fix? -- Change > the one instance of ap_strchr() in xs/Apache2/Module/Apache2__Module.h > to be strchr() instead and then rebuild. Does that make the problem go > away? > > > On 9 April 2015 at 18:16, Steve Hay <steve.m....@googlemail.com> wrote: > > Can you see where the -DAP_DEBUG comes from, e.g. by grepping > > /usr/local/httpd-2.4.12/bin/ap* for AP_DEBUG? > > > > I think that symbol is not supposed to find its way into the mod_perl > > build options, but it's obviously getting picked up somewhere and > > slipping through... > > > > > > On 9 April 2015 at 15:05, Jie Gao <j....@sydney.edu.au> wrote: > >> Hi Steve > >> > >> httpd is configured with "--enable-maintainer-mode". > >> > >> For mod_perl: > >> > >> /usr/local/bin/perl Makefile.PL > >>MP_APXS=/usr/local/httpd-2.4.12/bin/apxs > >>MP_APR_CONFIG=/usr/local/httpd-2.4.12/bin/apr-1-config > >> > >> and I found the following line in the resultant Makefile: > >> > >> CCFLAGS = -D_REENTRANT -D_GNU_SOURCE -fPIC -fwrapv -fno-strict-aliasing > >> -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE > >> -D_FILE_OFFSET_BITS=64 -DMOD_PERL -DMP_COMPAT_1X -DLINUX -D_REENTRANT > >> -D_GNU_SOURCE -DAP_DEBUG > >> > >> > >> > >> Regards, > >> > >> Jie > >> > >> * Steve Hay <steve.m....@googlemail.com> wrote: > >> > >>> Date: Thu, 9 Apr 2015 14:29:44 +0100 > >>> From: Steve Hay <steve.m....@googlemail.com> > >>> To: Jie Gao <j....@sydney.edu.au> > >>> CC: "modperl@perl.apache.org" <modperl@perl.apache.org>, mod_perl Dev > >>> <d...@perl.apache.org> > >>> Subject: Re: Trunk: APR.so won't load > >>> > >>> Sorry for the slow reply. > >>> > >>> I cannot reproduce the problem here on Windows. Your example module > >>> loads up fine with all the "use APR" lines uncommented. > >>> > >>> The build system (and the means by which APR::* should be loadable > >>> without mod_perl.so being loaded) is different on Windows, but I did > >>> notice this: > >>> > >>> ap_strchr seems to only be used in xs\Apache2\Module\Apache2__Module.h > >>> but when I run Module.c through the preprocessor I find that ap_strchr > >>> gets changed to strchr, and the latter is simply imported from the C > >>> run-time library. > >>> > >>> I guess that's down to this code in httpd.h: > >>> > >>> #ifdef AP_DEBUG > >>> > >>> #undef strchr > >>> # define strchr(s, c) ap_strchr(s,c) > >>> #undef strrchr > >>> # define strrchr(s, c) ap_strrchr(s,c) > >>> #undef strstr > >>> # define strstr(s, c) ap_strstr(s,c) > >>> > >>> #else > >>> > >>> /** use this instead of strchr */ > >>> # define ap_strchr(s, c) strchr(s, c) > >>> /** use this instead of strchr */ > >>> # define ap_strchr_c(s, c) strchr(s, c) > >>> /** use this instead of strrchr */ > >>> # define ap_strrchr(s, c) strrchr(s, c) > >>> /** use this instead of strrchr */ > >>> # define ap_strrchr_c(s, c) strrchr(s, c) > >>> /** use this instead of strrstr*/ > >>> # define ap_strstr(s, c) strstr(s, c) > >>> /** use this instead of strrstr*/ > >>> # define ap_strstr_c(s, c) strstr(s, c) > >>> > >>> #endif > >>> > >>> so presumably I do not have AP_DEBUG defined for my build (even though > >>> it was a debug build). > >>> > >>> It looks like AP_DEBUG should not be defined, even in maintainer mode, > >>> according to an old Changes entry: > >>> > >>> remove -DAP_HAVE_DESIGNATED_INITIALIZER and -DAP_DEBUG from > >>> MP_MAINTAINER mode to avoid collisions [Joe Orton] > >>> > >>> but do you somehow have AP_DEBUG defined somewhere, which causes the > >>> replacement of ap_strchr with strchr to not happen for you? > >>> > >>> > >>> On 27 March 2015 at 09:14, Jie Gao <j....@sydney.edu.au> wrote: > >>> > Hi All > >>> > > >>> > I had some more time looking into this, and here's some info I can > >>> > provide. > >>> > > >>> > -------------------------------------------------------------------------- > >>> > > >>> > # readelf -a > >>> > /usr/local/lib/perl5/site_perl/5.20.2/x86_64-linux-thread-multi/auto/APR/APR.so > >>> > ELF Header: > >>> > Magic: 7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00 > >>> > Class: ELF64 > >>> > Data: 2's complement, little endian > >>> > Version: 1 (current) > >>> > OS/ABI: UNIX - System V > >>> > ABI Version: 0 > >>> > Type: DYN (Shared object file) > >>> > Machine: Advanced Micro Devices X86-64 > >>> > Version: 0x1 > >>> > Entry point address: 0x1cb0 > >>> > Start of program headers: 64 (bytes into file) > >>> > Start of section headers: 15480 (bytes into file) > >>> > Flags: 0x0 > >>> > Size of this header: 64 (bytes) > >>> > Size of program headers: 56 (bytes) > >>> > Number of program headers: 6 > >>> > Size of section headers: 64 (bytes) > >>> > Number of section headers: 29 > >>> > Section header string table index: 26 > >>> > > >>> > Section Headers: > >>> > [Nr] Name Type Address Offset > >>> > Size EntSize Flags Link Info Align > >>> > [ 0] NULL 0000000000000000 00000000 > >>> > 0000000000000000 0000000000000000 0 0 0 > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > Dynamic section at offset 0x36f8 contains 27 entries: > >>> > Tag Type Name/Value > >>> > 0x0000000000000001 (NEEDED) Shared library: > >>> >[libaprutil-1.so.0] > >>> > 0x0000000000000001 (NEEDED) Shared library: [libexpat.so.1] > >>> > 0x0000000000000001 (NEEDED) Shared library: [libapr-1.so.0] > >>> > 0x0000000000000001 (NEEDED) Shared library: [librt.so.1] > >>> > 0x0000000000000001 (NEEDED) Shared library: [libcrypt.so.1] > >>> > 0x0000000000000001 (NEEDED) Shared library: > >>> >[libpthread.so.0] > >>> > 0x0000000000000001 (NEEDED) Shared library: [libc.so.6] > >>> > 0x000000000000000f (RPATH) Library rpath: > >>> >[/usr/local/httpd-2.4.12/lib:/lib/../lib64] > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > Relocation section '.rela.plt' at offset 0x1300 contains 61 entries: > >>> > Offset Info Type Sym. Value Sym. Name + > >>> >Addend > >>> > 000000203930 000200000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > Perl_mg_get + 0 > >>> > 000000203938 000300000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > Perl_sv_setiv + 0 > >>> > 000000203940 000400000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > Perl_sv_bless + 0 > >>> > 000000203948 000500000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > apr_strerror + 0 > >>> > 000000203950 000600000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > Perl_require_pv + 0 > >>> > 000000203958 000700000007 R_X86_64_JUMP_SLO 0000000000000000 Perl_warn > >>> > + 0 > >>> > 000000203960 000800000007 R_X86_64_JUMP_SLO 0000000000000000 > >>> > PerlIO_printf + 0 > >>> > 000000203968 000900000007 R_X86_64_JUMP_SLO 0000000000000000 ap_strchr > >>> > + 0 > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > Symbol table '.dynsym' contains 86 entries: > >>> > Num: Value Size Type Bind Vis Ndx Name > >>> > 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND > >>> > 1: 00000000000018b8 0 SECTION LOCAL DEFAULT 9 > >>> > 2: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Perl_mg_get > >>> > 3: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Perl_sv_setiv > >>> > 4: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Perl_sv_bless > >>> > 5: 0000000000000000 0 FUNC GLOBAL DEFAULT UND apr_strerror > >>> > 6: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND > >>> >Perl_require_pv > >>> > 7: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND Perl_warn > >>> > 8: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND PerlIO_printf > >>> > 9: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND ap_strchr > >>> > > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > Symbol table '.symtab' contains 143 entries: > >>> > Num: Value Size Type Bind Vis Ndx Name > >>> > 0: 0000000000000000 0 NOTYPE LOCAL DEFAULT UND > >>> > 1: 0000000000000190 0 SECTION LOCAL DEFAULT 1 > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > 69: 0000000000000000 0 NOTYPE GLOBAL DEFAULT UND ap_strchr > >>> > > >>> > > >>> > [ Lines removed for clarity ] > >>> > > >>> > -------------------------------------------------------------------------- > >>> > > >>> > It seems that ap_strchr is not defined anywhere outside httpd, and not > >>> > in > >>> > any of the shared libs. This seems to create the problem when building > >>> > a module with mod_perl or outside the mod_perl source. > >>> > > >>> > I find a somewhat related change by Stas in the past in the Changes > >>> > file: > >>> > > >>> > bug reports generating code: [Stas] > >>> > - add (apr|apu)-config linking info > >>> > - show the full path to the config file used to get the data for the > >>> > report > >>> > > >>> > The APR and APR::* family of modules can now be used without having > >>> > to load mod_perl.so. On *nix, this is done by compiling the needed > >>> > functions from the appropriate sources used to build mod_perl.so > >>> > into APR.so, and then arranging for APR::* to 'use APR ()'. On Win32, > >>> > a static library of needed functions is built, and APR/APR::* > >>> > then link into this library [Stas, Joe Schaefer, Randy Kobes] > >>> > > >>> > > >>> > I hope this helps resolve this issue in any way. > >>> > > >>> > > >>> > > >>> > > >>> > > >>> > Regards, > >>> > > >>> > Jie > >>> > > >>> > * Jie Gao <j....@sydney.edu.au> wrote: > >>> > > >>> >> Date: Sun, 1 Mar 2015 17:30:45 +1100 > >>> >> From: Jie Gao <j....@sydney.edu.au> > >>> >> To: "modperl@perl.apache.org" <modperl@perl.apache.org>, mod_perl Dev > >>> >> <d...@perl.apache.org> > >>> >> Subject: Trunk: APR.so won't load > >>> >> User-Agent: Mutt/1.5.21 (2010-09-15) > >>> >> > >>> >> I have got the source code from the trunk, "make test" mostly passed > >>> >> except for > >>> >> a threading issue, but I installed it anyway. > >>> >> > >>> >> Tried to load a test module, but it fails with the following error: > >>> >> > >>> >> # Error: Can't load > >>> >> '/usr/local/lib/perl5/site_perl/5.20.2/x86_64-linux-thread-multi/auto/APR/APR.so' > >>> >> for module APR: > >>> >> /usr/local/lib/perl5/site_perl/5.20.2/x86_64-linux-thread-multi/auto/APR/APR.so: > >>> >> undefined symbol: ap_strchr at > >>> >> /usr/local/lib/perl5/5.20.2/x86_64-linux-thread-multi/DynaLoader.pm > >>> >> line 193. > >>> >> # at > >>> >> /usr/local/lib/perl5/site_perl/5.20.2/x86_64-linux-thread-multi/APR/Table.pm > >>> >> line 23. > >>> >> > >>> >> The following test module loads OK, but fails if I uncomment any of > >>> >> the "use APR::*" lines: > >>> >> > >>> >> #------------------------------------------------------------------------- > >>> >> > >>> >> package mytest::mytestmodule; > >>> >> > >>> >> use 5.010001; > >>> >> use strict; > >>> >> use warnings; > >>> >> use Carp; > >>> >> $SIG{__DIE__} = \&Carp::confess; > >>> >> > >>> >> use mod_perl2; > >>> >> use Apache2::Connection(); > >>> >> use Apache2::RequestRec(); > >>> >> use Apache2::SubRequest(); > >>> >> use Apache2::Access(); > >>> >> use Apache2::RequestUtil(); > >>> >> use Apache2::Response(); > >>> >> use Apache2::Log(); > >>> >> use Apache2::Util(); > >>> >> use Apache2::Const ("-compile", qw(:common :methods :satisfy :auth > >>> >> MODE_READBYTES)); > >>> >> use Apache2::URI(); > >>> >> use Apache2::Filter (); > >>> >> #use APR::Const ("-compile", qw(:common SUCCESS BLOCK_READ)); > >>> >> use IO::Socket qw(SOCK_STREAM); > >>> >> use Data::Dumper; > >>> >> use AnyDBM_File (); > >>> >> #use APR::Brigade (); > >>> >> #use APR::Bucket (); > >>> >> #use APR::Base64 (); > >>> >> #use APR::Table (); > >>> >> #use APR::URI (); > >>> >> use URI::Escape::XS qw/uri_escape uri_unescape/; > >>> >> #use Apache2::MPM(); > >>> >> > >>> >> our $VERSION = '1.0.1'; > >>> >> > >>> >> 1; > >>> >> __END__ > >>> >> > >>> >> #------------------------------------------------------------------------- > >>> >> > >>> >> -------------8<---------- Start Bug Report ------------8<---------- > >>> >> 1. Problem Description: > >>> >> > >>> >> [DESCRIBE THE PROBLEM HERE] > >>> >> > >>> >> 2. Used Components and their Configuration: > >>> >> > >>> >> *** mod_perl version 2.000009 > >>> >> > >>> >> *** using /usr/local/src/mod_perl-2.0/lib/Apache2/BuildConfig.pm > >>> >> > >>> >> *** Makefile.PL options: > >>> >> MP_APR_CONFIG => /usr/local/httpd-2.4.12/bin/apr-1-config > >>> >> MP_APR_LIB => aprext > >>> >> MP_APXS => /usr/local/httpd-2.4.12/bin/apxs > >>> >> MP_COMPAT_1X => 1 > >>> >> MP_GENERATE_XS => 1 > >>> >> MP_LIBNAME => mod_perl > >>> >> MP_USE_DSO => 1 > >>> >> > >>> >> > >>> >> *** /usr/local/httpd-2.4.12/bin/httpd -V > >>> >> Server version: Apache/2.4.12 (Unix) > >>> >> Server built: Feb 27 2015 20:05:23 > >>> >> Server's Module Magic Number: 20120211:41 > >>> >> Server loaded: APR 1.5.1, APR-UTIL 1.5.4 > >>> >> Compiled using: APR 1.5.1, APR-UTIL 1.5.4 > >>> >> Architecture: 64-bit > >>> >> Server MPM: worker > >>> >> threaded: yes (fixed thread count) > >>> >> forked: yes (variable process count) > >>> >> Server compiled with.... > >>> >> -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 DYNAMIC_MODULE_LIMIT=256 > >>> >> -D HTTPD_ROOT="/usr/local/httpd-2.4.12" > >>> >> -D SUEXEC_BIN="/usr/local/httpd-2.4.12/bin/suexec" > >>> >> > >>> >> > >>> >> *** /usr/bin/ldd /usr/local/httpd-2.4.12/bin/httpd > >>> >> linux-vdso.so.1 => (0x00007fffcefff000) > >>> >> libpcre.so.0 => /lib64/libpcre.so.0 (0x000000327f400000) > >>> >> libaprutil-1.so.0 => > >>> >>/usr/local/httpd-2.4.12/lib/libaprutil-1.so.0 (0x00007f3ba864c000) > >>> >> libexpat.so.1 => /lib64/libexpat.so.1 (0x0000003281c00000) > >>> >> libapr-1.so.0 => /usr/local/httpd-2.4.12/lib/libapr-1.so.0 > >>> >>(0x00007f3ba8417000) > >>> >> librt.so.1 => /lib64/librt.so.1 (0x000000327dc00000) > >>> >> libcrypt.so.1 => /lib64/libcrypt.so.1 (0x00000036c2400000) > >>> >> libpthread.so.0 => /lib64/libpthread.so.0 (0x000000327d400000) > >>> >> libc.so.6 => /lib64/libc.so.6 (0x000000327d000000) > >>> >> /lib64/ld-linux-x86-64.so.2 (0x000000327cc00000) > >>> >> libfreebl3.so => /lib64/libfreebl3.so (0x00000036c2800000) > >>> >> libdl.so.2 => /lib64/libdl.so.2 (0x000000327d800000) > >>> >> > >>> >> > >>> >> *** (apr|apu)-config linking info > >>> >> > >>> >> -L/usr/local/httpd-2.4.12/lib -laprutil-1 -lexpat > >>> >> -L/usr/local/httpd-2.4.12/lib -lapr-1 -lrt -lcrypt -lpthread > >>> >> > >>> >> > >>> >> > >>> >> *** /usr/local/bin/perl -V > >>> >> Summary of my perl5 (revision 5 version 20 subversion 2) configuration: > >>> >> > >>> >> Platform: > >>> >> osname=linux, osvers=2.6.32-504.8.1.el6.x86_64, > >>> >>archname=x86_64-linux-thread-multi > >>> >> uname='linux xxx.xxx.xxx.xx 2.6.32-504.8.1.el6.x86_64 #1 smp fri > >>> >>dec 19 12:09:25 est 2014 x86_64 x86_64 x86_64 gnulinux ' > >>> >> config_args='-Dusethreads -Dprefix=/usr/local -des -A ccflags=-fPIC' > >>> >> hint=recommended, useposix=true, d_sigaction=define > >>> >> useithreads=define, usemultiplicity=define > >>> >> use64bitint=define, use64bitall=define, uselongdouble=undef > >>> >> usemymalloc=n, bincompat5005=undef > >>> >> Compiler: > >>> >> cc='cc', ccflags ='-D_REENTRANT -D_GNU_SOURCE -fPIC -fwrapv > >>> >>-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include > >>> >>-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64', > >>> >> optimize='-O2', > >>> >> cppflags='-D_REENTRANT -D_GNU_SOURCE -fPIC -fwrapv > >>> >>-fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include' > >>> >> ccversion='', gccversion='4.4.7 20120313 (Red Hat 4.4.7-11)', > >>> >>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 =' -fstack-protector -L/usr/local/lib' > >>> >> libpth=/usr/local/lib /usr/lib /lib/../lib64 /usr/lib/../lib64 /lib > >>> >>/lib64 /usr/lib64 /usr/local/lib64 > >>> >> libs=-lnsl -lgdbm -ldb -ldl -lm -lcrypt -lutil -lpthread -lc > >>> >> perllibs=-lnsl -ldl -lm -lcrypt -lutil -lpthread -lc > >>> >> libc=libc-2.12.so, so=so, useshrplib=false, libperl=libperl.a > >>> >> gnulibc_version='2.12' > >>> >> Dynamic Linking: > >>> >> dlsrc=dl_dlopen.xs, dlext=so, d_dlsymun=undef, ccdlflags='-Wl,-E' > >>> >> cccdlflags='-fPIC', lddlflags='-shared -O2 -L/usr/local/lib > >>> >>-fstack-protector' > >>> >> > >>> >> > >>> >> Characteristics of this binary (from libperl): > >>> >> Compile-time options: HAS_TIMES MULTIPLICITY PERLIO_LAYERS > >>> >> PERL_DONT_CREATE_GVSV > >>> >> PERL_HASH_FUNC_ONE_AT_A_TIME_HARD > >>> >> PERL_IMPLICIT_CONTEXT PERL_MALLOC_WRAP > >>> >> PERL_NEW_COPY_ON_WRITE PERL_PRESERVE_IVUV > >>> >> USE_64_BIT_ALL USE_64_BIT_INT USE_ITHREADS > >>> >> USE_LARGE_FILES USE_LOCALE USE_LOCALE_COLLATE > >>> >> USE_LOCALE_CTYPE USE_LOCALE_NUMERIC USE_PERLIO > >>> >> USE_PERL_ATOF USE_REENTRANT_API > >>> >> Built under linux > >>> >> Compiled at Feb 25 2015 15:58:55 > >>> >> %ENV: > >>> >> PERL_LWP_USE_HTTP_10="1" > >>> >> @INC: > >>> >> /usr/local/lib/perl5/site_perl/5.20.2/x86_64-linux-thread-multi > >>> >> /usr/local/lib/perl5/site_perl/5.20.2 > >>> >> /usr/local/lib/perl5/5.20.2/x86_64-linux-thread-multi > >>> >> /usr/local/lib/perl5/5.20.2 > >>> >> /usr/local/lib/perl5/site_perl/5.18.2 > >>> >> /usr/local/lib/perl5/site_perl/5.18.0 > >>> >> /usr/local/lib/perl5/site_perl > >>> >> . > >>> >> > >>> >> *** Packages of interest status: > >>> >> > >>> >> Apache2 : - > >>> >> Apache2::Request : - > >>> >> CGI : 3.65 > >>> >> ExtUtils::MakeMaker: 6.98 > >>> >> LWP : 5.837 > >>> >> mod_perl : - > >>> >> mod_perl2 : 2.000009 > >>> >> > >>> >> > >>> >> 3. This is the core dump trace: (if you get a core dump): > >>> >> > >>> >> [CORE TRACE COMES HERE] > >>> >> > >>> >> This report was generated by bin/mp2bug on Sun Mar 1 06:21:21 2015 > >>> >> GMT. > >>> >> > >>> >> -------------8<---------- End Bug Report --------------8<---------- > >>> >> > >>> >> # ls -al /usr/local/httpd-2.4.12/lib/ > >>> >> total 4108 > >>> >> drwxr-xr-x. 4 root root 4096 Feb 27 20:07 . > >>> >> drwxr-xr-x. 15 root root 4096 Feb 27 20:07 .. > >>> >> -rw-r--r--. 1 root root 9262 Feb 27 20:07 apr.exp > >>> >> drwxr-xr-x. 2 root root 4096 Feb 27 20:07 apr-util-1 > >>> >> -rw-r--r--. 1 root root 5272 Feb 27 20:07 aprutil.exp > >>> >> -rw-r--r--. 1 root root 1685642 Feb 27 20:07 libapr-1.a > >>> >> -rwxr-xr-x. 1 root root 969 Feb 27 20:07 libapr-1.la > >>> >> lrwxrwxrwx. 1 root root 17 Feb 27 20:07 libapr-1.so -> > >>> >> libapr-1.so.0.5.1 > >>> >> lrwxrwxrwx. 1 root root 17 Feb 27 20:07 libapr-1.so.0 -> > >>> >> libapr-1.so.0.5.1 > >>> >> -rwxr-xr-x. 1 root root 858051 Feb 27 20:07 libapr-1.so.0.5.1 > >>> >> -rw-r--r--. 1 root root 1022024 Feb 27 20:07 libaprutil-1.a > >>> >> -rwxr-xr-x. 1 root root 1045 Feb 27 20:07 libaprutil-1.la > >>> >> lrwxrwxrwx. 1 root root 21 Feb 27 20:07 libaprutil-1.so -> > >>> >> libaprutil-1.so.0.5.4 > >>> >> lrwxrwxrwx. 1 root root 21 Feb 27 20:07 libaprutil-1.so.0 -> > >>> >> libaprutil-1.so.0.5.4 > >>> >> -rwxr-xr-x. 1 root root 589222 Feb 27 20:07 libaprutil-1.so.0.5.4 > >>> >> drwxr-xr-x. 2 root root 4096 Feb 27 20:07 pkgconfig > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> > >>> >> Regards, > >>> >> > >>> >> > >>> >> Jie. > >>> >> > >>> >> > >>> >>