Re: [mp2] Test fails with undefined symbols on AIX [mod_perl 2.0.5/apache-2.2.22/perl-5.14.2]

2012-04-20 Thread Peter Heimann
Here are a few more 'make test'results:

Perl 5.8.8/Apache 2.2.22/mod_perl 2.0.4:
 All t/apr-ext/* testcases successful

Perl 5.8.8/Apache 2.2.22/mod_perl 2.0.6 rc5:
 Test server fails to start:

 Can't load '.../blib/arch/auto/ModPerl/Const/Const.so' for module
ModPerl::Const: rtld: 0712-001 Symbol MUTABLE_CV was referenced
  from module .../blib/arch/auto/ModPerl/Const/Const.so(), but a
runtime definition
  of the symbol was not found. at
.../perl/lib/aix-thread-multi/DynaLoader.pm line 230.
 ...
 httpd: Syntax error on line 13 of .../t/conf/httpd.conf: Cannot load
.../src/modules/perl/mod_perl.so into server: rtld: 0712-001 Symbol
MUTABLE_CV was referenced\n  from module
.../src/modules/perl/mod_perl.so(), but a runtime definition\n  of
the symbol was not found.


Perl 5.10.1/Apache 2.2.22/mod_perl 2.0.4:
 t/apr-ext/brigade.t and other t/apr-ext/* tests fail:

 Can't load '.../blib/arch/auto/APR/Brigade/Brigade.so' for module
APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
  from module .../blib/arch/auto/APR/Brigade/Brigade.so(), but a
runtime definition
  of the symbol was not found. at
.../perl510/lib/5.10.1/aix-thread-multi/DynaLoader.pm line 200.
 at .../blib/lib/APR/XSLoader.pm line 31
Compilation failed in require at .../t/lib/TestAPRlib/brigade.pm line 15.

Perl 5.10.1/Apache 2.2.22/mod_perl 2.0.6 rc5:
 t/apr-ext/brigade.t and other t/apr-ext/* tests fail:

 Can't load '.../blib/arch/auto/APR/Brigade/Brigade.so' for module
APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
  from module .../blib/arch/auto/APR/Brigade/Brigade.so(), but a
runtime definition
  of the symbol was not found. at
.../perl510/lib/5.10.1/aix-thread-multi/DynaLoader.pm line 200.
 at .../t/lib/TestAPRlib/brigade.pm line 15
Compilation failed in require at .../t/lib/TestAPRlib/brigade.pm line 15.

Perl 5.12.4/Apache 2.2.22/mod_perl 2.0.4:
Perl 5.12.4/Apache 2.2.22/mod_perl 2.0.6 rc5:
 Same test failures as with Perl 5.10.1


All Perl versions have been configured with
 ./Configure -d -Dcc=cc_r -Duseshrplib -Dusethreads -Dprefix=/some/path

All mod_perl versions have been configured with
 perl Makefile.PL MP_APXS=/usr/local/apache/bin/apxs
(after changing the PATH definition to use the desired Perl version)

-- 
Peter Heimann


Re: [mp2] Test fails with undefined symbols on AIX [mod_perl 2.0.5/apache-2.2.22/perl-5.14.2]

2012-04-20 Thread Fred Moyer
  httpd: Syntax error on line 13 of .../t/conf/httpd.conf: Cannot load
 .../src/modules/perl/mod_perl.so into server: rtld: 0712-001 Symbol
 MUTABLE_CV was referenced\n      from module
 .../src/modules/perl/mod_perl.so(), but a runtime definition\n      of
 the symbol was not found.

We discovered this issue on the dev list also with 5.8.8, and are
rolling release candidate 6 shortly which should resolve this.


On Fri, Apr 20, 2012 at 12:27 AM, Peter Heimann heima...@web.de wrote:
 Here are a few more 'make test'results:

 Perl 5.8.8/Apache 2.2.22/mod_perl 2.0.4:
  All t/apr-ext/* testcases successful

 Perl 5.8.8/Apache 2.2.22/mod_perl 2.0.6 rc5:
  Test server fails to start:

  Can't load '.../blib/arch/auto/ModPerl/Const/Const.so' for module
 ModPerl::Const: rtld: 0712-001 Symbol MUTABLE_CV was referenced
      from module .../blib/arch/auto/ModPerl/Const/Const.so(), but a
 runtime definition
      of the symbol was not found. at
 .../perl/lib/aix-thread-multi/DynaLoader.pm line 230.
  ...
  httpd: Syntax error on line 13 of .../t/conf/httpd.conf: Cannot load
 .../src/modules/perl/mod_perl.so into server: rtld: 0712-001 Symbol
 MUTABLE_CV was referenced\n      from module
 .../src/modules/perl/mod_perl.so(), but a runtime definition\n      of
 the symbol was not found.


 Perl 5.10.1/Apache 2.2.22/mod_perl 2.0.4:
  t/apr-ext/brigade.t and other t/apr-ext/* tests fail:

  Can't load '.../blib/arch/auto/APR/Brigade/Brigade.so' for module
 APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
      from module .../blib/arch/auto/APR/Brigade/Brigade.so(), but a
 runtime definition
      of the symbol was not found. at
 .../perl510/lib/5.10.1/aix-thread-multi/DynaLoader.pm line 200.
  at .../blib/lib/APR/XSLoader.pm line 31
 Compilation failed in require at .../t/lib/TestAPRlib/brigade.pm line 15.

 Perl 5.10.1/Apache 2.2.22/mod_perl 2.0.6 rc5:
  t/apr-ext/brigade.t and other t/apr-ext/* tests fail:

  Can't load '.../blib/arch/auto/APR/Brigade/Brigade.so' for module
 APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
      from module .../blib/arch/auto/APR/Brigade/Brigade.so(), but a
 runtime definition
      of the symbol was not found. at
 .../perl510/lib/5.10.1/aix-thread-multi/DynaLoader.pm line 200.
  at .../t/lib/TestAPRlib/brigade.pm line 15
 Compilation failed in require at .../t/lib/TestAPRlib/brigade.pm line 15.

 Perl 5.12.4/Apache 2.2.22/mod_perl 2.0.4:
 Perl 5.12.4/Apache 2.2.22/mod_perl 2.0.6 rc5:
  Same test failures as with Perl 5.10.1


 All Perl versions have been configured with
  ./Configure -d -Dcc=cc_r -Duseshrplib -Dusethreads -Dprefix=/some/path

 All mod_perl versions have been configured with
  perl Makefile.PL MP_APXS=/usr/local/apache/bin/apxs
 (after changing the PATH definition to use the desired Perl version)

 --
 Peter Heimann


Re: [mp2] Test fails with undefined symbols on AIX [mod_perl 2.0.5/apache-2.2.22/perl-5.14.2]

2012-04-17 Thread Peter Heimann
On 04/07/2012 12:36 AM, Fred Moyer wrote:
 RC3 is now available - see d...@perl.apache.org for the link.  

I get similar results for RC5.

Can't load
'/home/user/tmp/mod_perl-2.0.6-rc5/blib/arch/auto/APR/Brigade/Brigade.so' for
module APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
  from module
/home/user/tmp/mod_perl-2.0.6-rc5/blib/arch/auto/APR/Brigade/Brigade.so(),
but a runtime definition
  of the symbol was not found. at
/usr/local/perl/lib/5.14.2/aix-thread-multi/DynaLoader.pm line 190.
 at /home/user/tmp/mod_perl-2.0.6-rc5/t/lib/TestAPRlib/brigade.pm line 15
Compilation failed in require at
/home/user/tmp/mod_perl-2.0.6-rc5/t/lib/TestAPRlib/brigade.pm line 15.

Brigade.so references modperl_croak:

% nm blib/arch/auto/APR/Brigade/Brigade.so | grep modperl_croak
.modperl_croak   T9088
.modperl_croak   t9088  40
modperl_croakU   -
modperl_croakd3228   4

The symbol is defined in mod_perl.so:

% nm src/modules/perl/mod_perl.so | grep modperl_croak
.modperl_croak   T   48736
modperl_croakD   50728  12

Shouldn't Brigade.so then have a library dependency from mod_perl.so?
Apparently, it doesn't:

% ldd blib/arch/auto/APR/Brigade/Brigade.so
blib/arch/auto/APR/Brigade/Brigade.so needs:
 /usr/lib/librtl.a(shr.o)
 /unix

 Do you have another set of APR libraries installed, perhaps with the 
 packaging system that comes with AIX? It looks like mod_perl was built 
 against a different set of APR libs than is being loaded at runtime. 

No, not in the AIX standard lib directories or in the LIBPATH.

-- 
Peter Heimann


Re: [mp2] Test fails with undefined symbols on AIX [mod_perl 2.0.5/apache-2.2.22/perl-5.14.2]

2012-04-06 Thread Fred Moyer
Do you have another set of APR libraries installed, perhaps with the packaging 
system that comes with AIX? It looks like mod_perl was built against a 
different set of APR libs than is being loaded at runtime. 

 Symbol modperl_hash_tied_object
 was referenced
 from module
 /home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Table/Table.so(),
 but a runtime definition
 of the symbol was not found.


RC3 is now available - see d...@perl.apache.org for the link.  


On Tuesday, April 3, 2012 at 2:06 PM, Peter Heimann wrote:

 
 1. Problem Description:
 
 On AIX 5.3, with both mod_perl 2.0.5 and 2.0.6-rc2,
 perl -e 'use Apache2::Request;' fails because the loader cannot find
 runtime definitions for several symbols:
 Symbol modperl_hash_tied_object was referenced from module
 /usr/local/perl/lib/site_perl/5.14.2/aix-thread-multi/auto/APR/Table/Table.so(),
 but a runtime definition of the symbol was not found.
 
 The problem is shown by the t/apr-ext/brigade.t, t/apr-ext/finfo.t,
 t/apr-ext/pool.t, t/apr-ext/table.t, t/apr-ext/threadmutex.t,
 and t/apr-ext/uri.t test cases as well:
 
 
 cd src/modules/perl  make
 Target all is up to date.
 /usr/local/bin/perl -Iblib/arch -Iblib/lib t/TEST -clean
 [warning] setting ulimit to allow core files
 ulimit -c unlimited; /usr/local/bin/perl
 /home/user/tmp/mod_perl-2.0.6-rc2/t/TEST -clean
 APACHE_TEST_GROUP= APACHE_TEST_HTTPD= APACHE_TEST_PORT=
 APACHE_TEST_USER= APACHE_TEST_APXS= /usr/local/bin/perl -Iblib/arch
 -Iblib/lib t/TEST -bugreport -verbose=1 apr-ext/brigade.t
 apr-ext/finfo.t apr-ext/pool.t apr-ext/table.t apr-ext/threadmutex.t
 apr-ext/uri.t
 [warning] setting ulimit to allow core files
 ulimit -c unlimited; /usr/local/bin/perl
 /home/user/tmp/mod_perl-2.0.6-rc2/t/TEST -bugreport -verbose=1
 'apr-ext/brigade.t' 'apr-ext/finfo.t' 'apr-ext/pool.t' 'apr-ext/table.t'
 'apr-ext/threadmutex.t' 'apr-ext/uri.t'
 /usr/local/apache/bin/httpd -d /home/user/tmp/mod_perl-2.0.6-rc2/t -f
 /home/user/tmp/mod_perl-2.0.6-rc2/t/conf/httpd.conf -D APACHE2 -D
 PERL_USEITHREADS
 using Apache/2.2.22 (prefork MPM)
 
 waiting 120 seconds for server to start: .[Tue Apr 03 13:09:10 2012]
 [info] 6 Apache2:: modules loaded
 [Tue Apr 03 13:09:10 2012] [info] 0 APR:: modules loaded
 [Tue Apr 03 13:09:10 2012] [info] base server + 29 vhosts ready to run tests
 ...
 waiting 120 seconds for server to start: ok (waited 3 secs)
 server localhost:8529 started
 server localhost:8530 listening (filter_out_apache)
 server localhost:8531 listening (perlsections)
 server localhost:8532 listening (inherit)
 server localhost:8533 listening (TestModperl::merge)
 server localhost:8534 listening (TestModperl::perl_options)
 server localhost:8535 listening (TestModperl::perl_options2)
 server localhost:8536 listening (TestModperl::setupenv)
 server localhost:8537 listening (TestModules::proxy)
 server localhost:8538 listening (TestUser::rewrite)
 server localhost:8539 listening (TestVhost::config)
 server localhost:8540 listening (TestVhost::log)
 server localhost:8541 listening (TestProtocol::echo_bbs)
 server localhost:8542 listening (TestProtocol::echo_bbs2)
 server localhost:8543 listening (TestProtocol::echo_block)
 server localhost:8544 listening (TestProtocol::echo_filter)
 server localhost:8545 listening (TestProtocol::echo_nonblock)
 server localhost:8546 listening (TestProtocol::echo_timeout)
 server localhost:8547 listening (TestProtocol::pseudo_http)
 server localhost:8548 listening (TestPreConnection::note)
 server localhost:8549 listening (TestHooks::hookrun)
 server localhost:8550 listening (TestHooks::init)
 server localhost:8551 listening (TestHooks::stacked_handlers2)
 server localhost:8552 listening (TestHooks::startup)
 server localhost:8553 listening (TestHooks::trans)
 server localhost:8554 listening (TestFilter::both_str_con_add)
 server localhost:8555 listening (TestFilter::in_bbs_inject_header)
 server localhost:8556 listening (TestFilter::in_bbs_msg)
 server localhost:8557 listening (TestFilter::in_str_msg)
 server localhost:8558 listening (TestDirective::perlmodule)
 server localhost:8559 listening (TestDirective::perlrequire)
 server localhost:8560 listening (TestAPI::add_config)
 server localhost:8561 listening (TestDirective::perlloadmodule3)
 server localhost:8562 listening (TestDirective::perlloadmodule4)
 server localhost:8563 listening (TestDirective::perlloadmodule5)
 server localhost:8564 listening (TestDirective::perlloadmodule6)
 server localhost:8565 listening (TestHooks::push_handlers_anon)
 Can't load
 '/home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Brigade/Brigade.so' for
 module APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
 from module
 /home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Brigade/Brigade.so(),
 but a runtime definition
 of the symbol was not found. at
 /usr/local/perl/lib/5.14.2/aix-thread-multi/DynaLoader.pm line 190.
 at /home/user/tmp/mod_perl-2.0.6-rc2/t/lib/TestAPRlib/brigade.pm line 15
 Compilation failed in 

[mp2] Test fails with undefined symbols on AIX [mod_perl 2.0.5/apache-2.2.22/perl-5.14.2]

2012-04-03 Thread Peter Heimann

1. Problem Description:

 On AIX 5.3, with both mod_perl 2.0.5 and 2.0.6-rc2,
 perl -e 'use Apache2::Request;' fails because the loader cannot find
 runtime definitions for several symbols:
 Symbol modperl_hash_tied_object was referenced from module
 
/usr/local/perl/lib/site_perl/5.14.2/aix-thread-multi/auto/APR/Table/Table.so(),
 but a runtime definition of the symbol was not found.

 The problem is shown by the t/apr-ext/brigade.t, t/apr-ext/finfo.t,
 t/apr-ext/pool.t, t/apr-ext/table.t, t/apr-ext/threadmutex.t,
 and t/apr-ext/uri.t test cases as well:


cd src/modules/perl  make
Target all is up to date.
/usr/local/bin/perl -Iblib/arch -Iblib/lib  t/TEST -clean
[warning] setting ulimit to allow core files
ulimit -c unlimited; /usr/local/bin/perl
/home/user/tmp/mod_perl-2.0.6-rc2/t/TEST -clean
APACHE_TEST_GROUP= APACHE_TEST_HTTPD= APACHE_TEST_PORT=
APACHE_TEST_USER= APACHE_TEST_APXS=  /usr/local/bin/perl -Iblib/arch
-Iblib/lib  t/TEST -bugreport -verbose=1 apr-ext/brigade.t
apr-ext/finfo.t apr-ext/pool.t apr-ext/table.t apr-ext/threadmutex.t
apr-ext/uri.t
[warning] setting ulimit to allow core files
ulimit -c unlimited; /usr/local/bin/perl
/home/user/tmp/mod_perl-2.0.6-rc2/t/TEST -bugreport -verbose=1
'apr-ext/brigade.t' 'apr-ext/finfo.t' 'apr-ext/pool.t' 'apr-ext/table.t'
'apr-ext/threadmutex.t' 'apr-ext/uri.t'
/usr/local/apache/bin/httpd  -d /home/user/tmp/mod_perl-2.0.6-rc2/t -f
/home/user/tmp/mod_perl-2.0.6-rc2/t/conf/httpd.conf -D APACHE2 -D
PERL_USEITHREADS
using Apache/2.2.22 (prefork MPM)

waiting 120 seconds for server to start: .[Tue Apr 03 13:09:10 2012]
[info] 6 Apache2:: modules loaded
[Tue Apr 03 13:09:10 2012] [info] 0 APR:: modules loaded
[Tue Apr 03 13:09:10 2012] [info] base server + 29 vhosts ready to run tests
...
waiting 120 seconds for server to start: ok (waited 3 secs)
server localhost:8529 started
server localhost:8530 listening (filter_out_apache)
server localhost:8531 listening (perlsections)
server localhost:8532 listening (inherit)
server localhost:8533 listening (TestModperl::merge)
server localhost:8534 listening (TestModperl::perl_options)
server localhost:8535 listening (TestModperl::perl_options2)
server localhost:8536 listening (TestModperl::setupenv)
server localhost:8537 listening (TestModules::proxy)
server localhost:8538 listening (TestUser::rewrite)
server localhost:8539 listening (TestVhost::config)
server localhost:8540 listening (TestVhost::log)
server localhost:8541 listening (TestProtocol::echo_bbs)
server localhost:8542 listening (TestProtocol::echo_bbs2)
server localhost:8543 listening (TestProtocol::echo_block)
server localhost:8544 listening (TestProtocol::echo_filter)
server localhost:8545 listening (TestProtocol::echo_nonblock)
server localhost:8546 listening (TestProtocol::echo_timeout)
server localhost:8547 listening (TestProtocol::pseudo_http)
server localhost:8548 listening (TestPreConnection::note)
server localhost:8549 listening (TestHooks::hookrun)
server localhost:8550 listening (TestHooks::init)
server localhost:8551 listening (TestHooks::stacked_handlers2)
server localhost:8552 listening (TestHooks::startup)
server localhost:8553 listening (TestHooks::trans)
server localhost:8554 listening (TestFilter::both_str_con_add)
server localhost:8555 listening (TestFilter::in_bbs_inject_header)
server localhost:8556 listening (TestFilter::in_bbs_msg)
server localhost:8557 listening (TestFilter::in_str_msg)
server localhost:8558 listening (TestDirective::perlmodule)
server localhost:8559 listening (TestDirective::perlrequire)
server localhost:8560 listening (TestAPI::add_config)
server localhost:8561 listening (TestDirective::perlloadmodule3)
server localhost:8562 listening (TestDirective::perlloadmodule4)
server localhost:8563 listening (TestDirective::perlloadmodule5)
server localhost:8564 listening (TestDirective::perlloadmodule6)
server localhost:8565 listening (TestHooks::push_handlers_anon)
Can't load
'/home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Brigade/Brigade.so' for
module APR::Brigade: rtld: 0712-001 Symbol modperl_croak was referenced
  from module
/home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Brigade/Brigade.so(),
but a runtime definition
  of the symbol was not found. at
/usr/local/perl/lib/5.14.2/aix-thread-multi/DynaLoader.pm line 190.
 at /home/user/tmp/mod_perl-2.0.6-rc2/t/lib/TestAPRlib/brigade.pm line 15
Compilation failed in require at
/home/user/tmp/mod_perl-2.0.6-rc2/t/lib/TestAPRlib/brigade.pm line 15.
BEGIN failed--compilation aborted at
/home/user/tmp/mod_perl-2.0.6-rc2/t/lib/TestAPRlib/brigade.pm line 15.
Compilation failed in require at t/apr-ext/brigade.t line 7.
BEGIN failed--compilation aborted at t/apr-ext/brigade.t line 7.
t/apr-ext/brigade.t ..
Dubious, test returned 8 (wstat 2048, 0x800)
No subtests run
Can't load
'/home/user/tmp/mod_perl-2.0.6-rc2/blib/arch/auto/APR/Finfo/Finfo.so'
for module APR::Finfo: rtld: 0712-001 Symbol modperl_croak was referenced
  from