Skip Menu |

This queue is for tickets about the mod_perl CPAN distribution.

Report information
The Basics
Id: 102930
Status: open
Priority: 0/
Queue: mod_perl

People
Owner: Nobody in particular
Requestors: SREZIC [...] cpan.org
Cc:
AdminCc:

Bug Information
Severity: (no value)
Broken in: (no value)
Fixed in: (no value)



Subject: Test errors with perl 5.21.x
After the workaround described in https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to compile mod_perl from SVN on a FreeBSD 9.2 system with perl 5.21.10. "make test" gives me the following error summary: Test Summary Report ------------------- t/apache/util.t (Wstat: 0 Tests: 8 Failed: 4) Failed tests: 1-4 t/api/uri.t (Wstat: 0 Tests: 12 Failed: 0) Parse errors: Bad plan. You planned 24 tests but ran 12. t/apr-ext/uri.t (Wstat: 65280 Tests: 12 Failed: 0) Non-zero exit status: 255 Parse errors: Bad plan. You planned 36 tests but ran 12. t/apr/uri.t (Wstat: 0 Tests: 12 Failed: 0) Parse errors: Bad plan. You planned 36 tests but ran 12. t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: 3) Failed tests: 1-3 t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: 4) Failed tests: 1, 6-8 t/modperl/print.t (Wstat: 0 Tests: 5 Failed: 0) Parse errors: Bad plan. You planned 6 tests but ran 5. t/modperl/printf.t (Wstat: 512 Tests: 0 Failed: 0) Non-zero exit status: 2 Parse errors: No plan found in TAP output Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + 356.99 cusr 76.09 csys = 437.80 CPU) Result: FAIL Attached the generated error_log.
Subject: error_log
Download error_log
application/octet-stream 293.2k

Message body not shown because it is not plain text.

On Sat Mar 21 12:52:15 2015, SREZIC wrote: Show quoted text
> After the workaround described in > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > compile mod_perl from SVN on a FreeBSD 9.2 system with perl 5.21.10. > "make test" gives me the following error summary: > > Test Summary Report > ------------------- > t/apache/util.t (Wstat: 0 Tests: 8 Failed: 4) > Failed tests: 1-4 > t/api/uri.t (Wstat: 0 Tests: 12 Failed: 0) > Parse errors: Bad plan. You planned 24 tests but ran 12. > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 Failed: > 0) > Non-zero exit status: 255 > Parse errors: Bad plan. You planned 36 tests but ran 12. > t/apr/uri.t (Wstat: 0 Tests: 12 Failed: 0) > Parse errors: Bad plan. You planned 36 tests but ran 12. > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: 3) > Failed tests: 1-3 > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: 4) > Failed tests: 1, 6-8 > t/modperl/print.t (Wstat: 0 Tests: 5 Failed: 0) > Parse errors: Bad plan. You planned 6 tests but ran 5. > t/modperl/printf.t (Wstat: 512 Tests: 0 Failed: 0) > Non-zero exit status: 2 > Parse errors: No plan found in TAP output > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + > 356.99 cusr 76.09 csys = 437.80 CPU) > Result: FAIL > > Attached the generated error_log.
Thanks for the report. Do you still see these errors with 2.0.9-RC2 and 5.22.0? What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
On 2015-06-02 13:39:46, SHAY wrote: Show quoted text
> On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > After the workaround described in > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl 5.21.10. > > "make test" gives me the following error summary: > > > > Test Summary Report > > ------------------- > > t/apache/util.t (Wstat: 0 Tests: 8 Failed: 4) > > Failed tests: 1-4 > > t/api/uri.t (Wstat: 0 Tests: 12 Failed: 0) > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 Failed: > > 0) > > Non-zero exit status: 255 > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > t/apr/uri.t (Wstat: 0 Tests: 12 Failed: 0) > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: 3) > > Failed tests: 1-3 > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: 4) > > Failed tests: 1, 6-8 > > t/modperl/print.t (Wstat: 0 Tests: 5 Failed: 0) > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > t/modperl/printf.t (Wstat: 512 Tests: 0 Failed: 0) > > Non-zero exit status: 2 > > Parse errors: No plan found in TAP output > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + > > 356.99 cusr 76.09 csys = 437.80 CPU) > > Result: FAIL > > > > Attached the generated error_log.
> > > Thanks for the report. Do you still see these errors with 2.0.9-RC2 > and 5.22.0? > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I tried on Debian wheezy and FreeBSD 9.2: cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl-2.0.9-rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe -fstack-protector -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl-5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 -fPIC \ -c modperl_filter.c && mv modperl_filter.o modperl_filter.lo modperl_filter.c: In function 'modperl_run_filter': modperl_filter.c:538:17: error: unknown type name 'modperl_interp_t' modperl_filter.c:538:17: warning: initialization makes pointer from integer without a cast [enabled by default] modperl_filter.c:538:17: error: request for member 'refcnt' in something not a structure or union modperl_filter.c:549:9: error: unknown type name 'modperl_interp_t' modperl_filter.c:549:9: warning: initialization makes pointer from integer without a cast [enabled by default] modperl_filter.c:549:9: error: request for member 'refcnt' in something not a structure or union modperl_filter.c:553:9: error: unknown type name 'modperl_interp_t' modperl_filter.c:553:9: warning: initialization makes pointer from integer without a cast [enabled by default] modperl_filter.c:553:9: error: request for member 'refcnt' in something not a structure or union make[1]: *** [modperl_filter.lo] Error 1 make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' make: *** [modperl_lib] Error 2 [3] 14308
On 2015-06-02 15:32:00, SREZIC wrote: Show quoted text
> On 2015-06-02 13:39:46, SHAY wrote:
> > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > After the workaround described in > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > 5.21.10. > > > "make test" gives me the following error summary: > > > > > > Test Summary Report > > > ------------------- > > > t/apache/util.t (Wstat: 0 Tests: 8 Failed: 4) > > > Failed tests: 1-4 > > > t/api/uri.t (Wstat: 0 Tests: 12 Failed: > > > 0) > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 > > > Failed: > > > 0) > > > Non-zero exit status: 255 > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > t/apr/uri.t (Wstat: 0 Tests: 12 Failed: > > > 0) > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: 3) > > > Failed tests: 1-3 > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: 4) > > > Failed tests: 1, 6-8 > > > t/modperl/print.t (Wstat: 0 Tests: 5 Failed: 0) > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > t/modperl/printf.t (Wstat: 512 Tests: 0 Failed: > > > 0) > > > Non-zero exit status: 2 > > > Parse errors: No plan found in TAP output > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > Result: FAIL > > > > > > Attached the generated error_log.
> > > > > > Thanks for the report. Do you still see these errors with 2.0.9-RC2 > > and 5.22.0? > > > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
> > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I tried on > Debian wheezy and FreeBSD 9.2: > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl-2.0.9- > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe -fstack- > protector -I/usr/local/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 > -fPIC \ > -c modperl_filter.c && mv modperl_filter.o modperl_filter.lo > modperl_filter.c: In function 'modperl_run_filter': > modperl_filter.c:538:17: error: unknown type name 'modperl_interp_t' > modperl_filter.c:538:17: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:538:17: error: request for member 'refcnt' in > something not a structure or union > modperl_filter.c:549:9: error: unknown type name 'modperl_interp_t' > modperl_filter.c:549:9: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:549:9: error: request for member 'refcnt' in > something not a structure or union > modperl_filter.c:553:9: error: unknown type name 'modperl_interp_t' > modperl_filter.c:553:9: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:553:9: error: request for member 'refcnt' in > something not a structure or union > make[1]: *** [modperl_filter.lo] Error 1 > make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' > make: *** [modperl_lib] Error 2 > [3] 14308
And with a threaded perl 5.22.0 on Debian/wheezy things are slightly better: compilation works, but linking fails: cc -shared -O2 -L/usr/local/lib -fstack-protector \ \ mod_perl.lo modperl_interp.lo modperl_tipool.lo modperl_log.lo modperl_config.lo modperl_cmd.lo modperl_options.lo modperl_callback.lo modperl_handler.lo modperl_gtop.lo modperl_util.lo modperl_io.lo modperl_io_apache.lo modperl_filter.lo modperl_bucket.lo modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo modperl_perl_pp.lo modperl_sys.lo modperl_module.lo modperl_svptr_table.lo modperl_const.lo modperl_constants.lo modperl_apache_compat.lo modperl_error.lo modperl_debug.lo modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo modperl_directives.lo modperl_flags.lo modperl_xsinit.lo modperl_exports.lo -Wl,-E -fstack-protector -L/usr/local/lib -L/opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE -lperl -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc \ -o mod_perl.so /usr/bin/ld: /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against `.rodata.str1.8' can not be used when making a shared object; recompile with -fPIC /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE/libperl.a: could not read symbols: Bad value collect2: error: ld returned 1 exit status make[1]: *** [mod_perl.so] Error 1 make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' make: *** [modperl_lib] Error 2
On Tue Jun 02 15:32:00 2015, SREZIC wrote: Show quoted text
> On 2015-06-02 13:39:46, SHAY wrote:
> > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > After the workaround described in > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > 5.21.10. > > > "make test" gives me the following error summary: > > > > > > Test Summary Report > > > ------------------- > > > t/apache/util.t (Wstat: 0 Tests: 8 Failed: 4) > > > Failed tests: 1-4 > > > t/api/uri.t (Wstat: 0 Tests: 12 Failed: > > > 0) > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 > > > Failed: > > > 0) > > > Non-zero exit status: 255 > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > t/apr/uri.t (Wstat: 0 Tests: 12 Failed: > > > 0) > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: 3) > > > Failed tests: 1-3 > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: 4) > > > Failed tests: 1, 6-8 > > > t/modperl/print.t (Wstat: 0 Tests: 5 Failed: 0) > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > t/modperl/printf.t (Wstat: 512 Tests: 0 Failed: > > > 0) > > > Non-zero exit status: 2 > > > Parse errors: No plan found in TAP output > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > Result: FAIL > > > > > > Attached the generated error_log.
> > > > > > Thanks for the report. Do you still see these errors with 2.0.9-RC2 > > and 5.22.0? > > > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
> > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I tried on > Debian wheezy and FreeBSD 9.2: > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl-2.0.9- > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe -fstack- > protector -I/usr/local/include -D_LARGEFILE_SOURCE > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 > -fPIC \ > -c modperl_filter.c && mv modperl_filter.o modperl_filter.lo > modperl_filter.c: In function 'modperl_run_filter': > modperl_filter.c:538:17: error: unknown type name 'modperl_interp_t' > modperl_filter.c:538:17: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:538:17: error: request for member 'refcnt' in > something not a structure or union > modperl_filter.c:549:9: error: unknown type name 'modperl_interp_t' > modperl_filter.c:549:9: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:549:9: error: request for member 'refcnt' in > something not a structure or union > modperl_filter.c:553:9: error: unknown type name 'modperl_interp_t' > modperl_filter.c:553:9: warning: initialization makes pointer from > integer without a cast [enabled by default] > modperl_filter.c:553:9: error: request for member 'refcnt' in > something not a structure or union > make[1]: *** [modperl_filter.lo] Error 1 > make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' > make: *** [modperl_lib] Error 2 > [3] 14308
I think that was caused by r1682366 and the patch below/attached may fix it (although I can't reproduce the problem on Windows since the WinNT MPM is threaded and so requires a threaded perl): Index: src/modules/perl/modperl_error.h =================================================================== --- src/modules/perl/modperl_error.h (revision 1683243) +++ src/modules/perl/modperl_error.h (working copy) @@ -37,6 +37,7 @@ void modperl_croak(pTHX_ apr_status_t rc, const char* func); +#ifdef USE_ITHREADS #define MP_PUTBACK_IF_USED() STMT_START \ { \ modperl_interp_t *interp = modperl_thx_interp_get(aTHX); \ @@ -44,6 +45,9 @@ modperl_interp_unselect(interp); \ } \ } STMT_END +#else +#define MP_PUTBACK_IF_USED() NOOP +#endif #define MP_CROAK_PUTBACK(rc, func) STMT_START \ { \
Subject: putback.patch
Index: src/modules/perl/modperl_error.h =================================================================== --- src/modules/perl/modperl_error.h (revision 1683243) +++ src/modules/perl/modperl_error.h (working copy) @@ -37,6 +37,7 @@ void modperl_croak(pTHX_ apr_status_t rc, const char* func); +#ifdef USE_ITHREADS #define MP_PUTBACK_IF_USED() STMT_START \ { \ modperl_interp_t *interp = modperl_thx_interp_get(aTHX); \ @@ -44,6 +45,9 @@ modperl_interp_unselect(interp); \ } \ } STMT_END +#else +#define MP_PUTBACK_IF_USED() NOOP +#endif #define MP_CROAK_PUTBACK(rc, func) STMT_START \ { \
On Tue Jun 02 15:33:31 2015, SREZIC wrote: Show quoted text
> On 2015-06-02 15:32:00, SREZIC wrote:
> > On 2015-06-02 13:39:46, SHAY wrote:
> > > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > > After the workaround described in > > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > > 5.21.10. > > > > "make test" gives me the following error summary: > > > > > > > > Test Summary Report > > > > ------------------- > > > > t/apache/util.t (Wstat: 0 Tests: 8 Failed: > > > > 4) > > > > Failed tests: 1-4 > > > > t/api/uri.t (Wstat: 0 Tests: 12 Failed: > > > > 0) > > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 > > > > Failed: > > > > 0) > > > > Non-zero exit status: 255 > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > t/apr/uri.t (Wstat: 0 Tests: 12 Failed: > > > > 0) > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 Failed: > > > > 3) > > > > Failed tests: 1-3 > > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 Failed: > > > > 4) > > > > Failed tests: 1, 6-8 > > > > t/modperl/print.t (Wstat: 0 Tests: 5 Failed: > > > > 0) > > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > > t/modperl/printf.t (Wstat: 512 Tests: 0 > > > > Failed: > > > > 0) > > > > Non-zero exit status: 2 > > > > Parse errors: No plan found in TAP output > > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys + > > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > > Result: FAIL > > > > > > > > Attached the generated error_log.
> > > > > > > > > Thanks for the report. Do you still see these errors with 2.0.9-RC2 > > > and 5.22.0? > > > > > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
> > > > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I tried on > > Debian wheezy and FreeBSD 9.2: > > > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl-2.0.9- > > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include > > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe -fstack- > > protector -I/usr/local/include -D_LARGEFILE_SOURCE > > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 > > -fPIC \ > > -c modperl_filter.c && mv modperl_filter.o modperl_filter.lo > > modperl_filter.c: In function 'modperl_run_filter': > > modperl_filter.c:538:17: error: unknown type name 'modperl_interp_t' > > modperl_filter.c:538:17: warning: initialization makes pointer from > > integer without a cast [enabled by default] > > modperl_filter.c:538:17: error: request for member 'refcnt' in > > something not a structure or union > > modperl_filter.c:549:9: error: unknown type name 'modperl_interp_t' > > modperl_filter.c:549:9: warning: initialization makes pointer from > > integer without a cast [enabled by default] > > modperl_filter.c:549:9: error: request for member 'refcnt' in > > something not a structure or union > > modperl_filter.c:553:9: error: unknown type name 'modperl_interp_t' > > modperl_filter.c:553:9: warning: initialization makes pointer from > > integer without a cast [enabled by default] > > modperl_filter.c:553:9: error: request for member 'refcnt' in > > something not a structure or union > > make[1]: *** [modperl_filter.lo] Error 1 > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' > > make: *** [modperl_lib] Error 2 > > [3] 14308
> > And with a threaded perl 5.22.0 on Debian/wheezy things are slightly > better: compilation works, but linking fails: > > cc -shared -O2 -L/usr/local/lib -fstack-protector \ > \ > mod_perl.lo modperl_interp.lo modperl_tipool.lo modperl_log.lo > modperl_config.lo modperl_cmd.lo modperl_options.lo > modperl_callback.lo modperl_handler.lo modperl_gtop.lo modperl_util.lo > modperl_io.lo modperl_io_apache.lo modperl_filter.lo modperl_bucket.lo > modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo > modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo > modperl_perl_pp.lo modperl_sys.lo modperl_module.lo > modperl_svptr_table.lo modperl_const.lo modperl_constants.lo > modperl_apache_compat.lo modperl_error.lo modperl_debug.lo > modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo > modperl_directives.lo modperl_flags.lo modperl_xsinit.lo > modperl_exports.lo -Wl,-E -fstack-protector -L/usr/local/lib > -L/opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE -lperl > -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc \ > -o mod_perl.so > /usr/bin/ld: /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > `.rodata.str1.8' can not be used when making a shared object; > recompile with -fPIC > /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE/libperl.a: > could not read symbols: Bad value > collect2: error: ld returned 1 exit status > make[1]: *** [mod_perl.so] Error 1 > make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' > make: *** [modperl_lib] Error 2
I'm afraid I don't know what the problem here is. Is it unique to 5.22 or does the same thing happen with a threaded build on the same system but using 5.20 instead? If it's just a 5.22 problem then I might pass over it for now (unless anyone else can fix it) since I already know of a big problem on 5.22 (CPAN RT#101962). We could just add a note to README to say that 5.22 isn't yet supported: Make 2.0.9 the release that supports httpd-2.4 (which is what everyone is waiting for, and has been for too long), and delay perl-5.22 support for 2.0.10 if need be.
On 2015-06-03 03:56:44, SHAY wrote: Show quoted text
> On Tue Jun 02 15:33:31 2015, SREZIC wrote:
> > On 2015-06-02 15:32:00, SREZIC wrote:
> > > On 2015-06-02 13:39:46, SHAY wrote:
> > > > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > > > After the workaround described in > > > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able to > > > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > > > 5.21.10. > > > > > "make test" gives me the following error summary: > > > > > > > > > > Test Summary Report > > > > > ------------------- > > > > > t/apache/util.t (Wstat: 0 Tests: 8 > > > > > Failed: > > > > > 4) > > > > > Failed tests: 1-4 > > > > > t/api/uri.t (Wstat: 0 Tests: 12 > > > > > Failed: > > > > > 0) > > > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 > > > > > Failed: > > > > > 0) > > > > > Non-zero exit status: 255 > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > t/apr/uri.t (Wstat: 0 Tests: 12 > > > > > Failed: > > > > > 0) > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 > > > > > Failed: > > > > > 3) > > > > > Failed tests: 1-3 > > > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 > > > > > Failed: > > > > > 4) > > > > > Failed tests: 1, 6-8 > > > > > t/modperl/print.t (Wstat: 0 Tests: 5 > > > > > Failed: > > > > > 0) > > > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > > > t/modperl/printf.t (Wstat: 512 Tests: 0 > > > > > Failed: > > > > > 0) > > > > > Non-zero exit status: 2 > > > > > Parse errors: No plan found in TAP output > > > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 sys > > > > > + > > > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > > > Result: FAIL > > > > > > > > > > Attached the generated error_log.
> > > > > > > > > > > > Thanks for the report. Do you still see these errors with 2.0.9- > > > > RC2 > > > > and 5.22.0? > > > > > > > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
> > > > > > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I tried > > > on > > > Debian wheezy and FreeBSD 9.2: > > > > > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl- > > > 2.0.9- > > > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 -I/usr/include > > > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe -fstack- > > > protector -I/usr/local/include -D_LARGEFILE_SOURCE > > > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > > > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 > > > -fPIC \ > > > -c modperl_filter.c && mv modperl_filter.o > > > modperl_filter.lo > > > modperl_filter.c: In function 'modperl_run_filter': > > > modperl_filter.c:538:17: error: unknown type name > > > 'modperl_interp_t' > > > modperl_filter.c:538:17: warning: initialization makes pointer from > > > integer without a cast [enabled by default] > > > modperl_filter.c:538:17: error: request for member 'refcnt' in > > > something not a structure or union > > > modperl_filter.c:549:9: error: unknown type name 'modperl_interp_t' > > > modperl_filter.c:549:9: warning: initialization makes pointer from > > > integer without a cast [enabled by default] > > > modperl_filter.c:549:9: error: request for member 'refcnt' in > > > something not a structure or union > > > modperl_filter.c:553:9: error: unknown type name 'modperl_interp_t' > > > modperl_filter.c:553:9: warning: initialization makes pointer from > > > integer without a cast [enabled by default] > > > modperl_filter.c:553:9: error: request for member 'refcnt' in > > > something not a structure or union > > > make[1]: *** [modperl_filter.lo] Error 1 > > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9- > > > rc2/src/modules/perl' > > > make: *** [modperl_lib] Error 2 > > > [3] 14308
> > > > And with a threaded perl 5.22.0 on Debian/wheezy things are slightly > > better: compilation works, but linking fails: > > > > cc -shared -O2 -L/usr/local/lib -fstack-protector \ > > \ > > mod_perl.lo modperl_interp.lo modperl_tipool.lo > > modperl_log.lo > > modperl_config.lo modperl_cmd.lo modperl_options.lo > > modperl_callback.lo modperl_handler.lo modperl_gtop.lo > > modperl_util.lo > > modperl_io.lo modperl_io_apache.lo modperl_filter.lo > > modperl_bucket.lo > > modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo > > modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo > > modperl_perl_pp.lo modperl_sys.lo modperl_module.lo > > modperl_svptr_table.lo modperl_const.lo modperl_constants.lo > > modperl_apache_compat.lo modperl_error.lo modperl_debug.lo > > modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo > > modperl_directives.lo modperl_flags.lo modperl_xsinit.lo > > modperl_exports.lo -Wl,-E -fstack-protector -L/usr/local/lib > > -L/opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE -lperl > > -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc \ > > -o mod_perl.so > > /usr/bin/ld: /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > > `.rodata.str1.8' can not be used when making a shared object; > > recompile with -fPIC > > /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > multi/CORE/libperl.a: > > could not read symbols: Bad value > > collect2: error: ld returned 1 exit status > > make[1]: *** [mod_perl.so] Error 1 > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9-rc2/src/modules/perl' > > make: *** [modperl_lib] Error 2
> > > I'm afraid I don't know what the problem here is. Is it unique to 5.22 > or does the same thing happen with a threaded build on the same system > but using 5.20 instead? > > If it's just a 5.22 problem then I might pass over it for now (unless > anyone else can fix it) since I already know of a big problem on 5.22 > (CPAN RT#101962). We could just add a note to README to say that 5.22 > isn't yet supported: Make 2.0.9 the release that supports httpd-2.4 > (which is what everyone is waiting for, and has been for too long), > and delay perl-5.22 support for 2.0.10 if need be.
I tried to get modperl working on the following systems: unthreaded 5.18.4 on Debian/wheezy with putback patch: compiles, but a linker error happens: /usr/bin/ld: /opt/perl-5.18.4/lib/5.18.4/x86_64-linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared object; recompile with -fPIC /opt/perl-5.18.4/lib/5.18.4/x86_64-linux/CORE/libperl.a: could not read symbols: Bad value unthreaded 5.22.0 on FreeBSD 9.2 with putback patch: compiles, but a linker error happens: /usr/bin/ld: /usr/perl5.22.0p/lib/5.22.0/amd64-freebsd/CORE/libperl.a(op.o): relocation R_X86_64_32S against `PL_sv_yes' can not be used when making a shared object; recompile with -fPIC /usr/perl5.22.0p/lib/5.22.0/amd64-freebsd/CORE/libperl.a: could not read symbols: Bad value threaded 5.20.0 on FreeBSD 9.2 without putback patch: compiles, links and tests successfully. threaded 5.22.0 on FreeBSD 9.2 without putback patch: compiles, but a linker error happens: /usr/bin/ld: /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread-multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against `PL_op_mutex' can not be used when making a shared object; recompile with -fPIC /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread-multi/CORE/libperl.a: could not read symbols: Bad value
On Wed Jun 03 15:00:49 2015, SREZIC wrote: Show quoted text
> On 2015-06-03 03:56:44, SHAY wrote:
> > On Tue Jun 02 15:33:31 2015, SREZIC wrote:
> > > On 2015-06-02 15:32:00, SREZIC wrote:
> > > > On 2015-06-02 13:39:46, SHAY wrote:
> > > > > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > > > > After the workaround described in > > > > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was able > > > > > > to > > > > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > > > > 5.21.10. > > > > > > "make test" gives me the following error summary: > > > > > > > > > > > > Test Summary Report > > > > > > ------------------- > > > > > > t/apache/util.t (Wstat: 0 Tests: 8 > > > > > > Failed: > > > > > > 4) > > > > > > Failed tests: 1-4 > > > > > > t/api/uri.t (Wstat: 0 Tests: 12 > > > > > > Failed: > > > > > > 0) > > > > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > > > > t/apr-ext/uri.t (Wstat: 65280 Tests: 12 > > > > > > Failed: > > > > > > 0) > > > > > > Non-zero exit status: 255 > > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > > t/apr/uri.t (Wstat: 0 Tests: 12 > > > > > > Failed: > > > > > > 0) > > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 > > > > > > Failed: > > > > > > 3) > > > > > > Failed tests: 1-3 > > > > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 > > > > > > Failed: > > > > > > 4) > > > > > > Failed tests: 1, 6-8 > > > > > > t/modperl/print.t (Wstat: 0 Tests: 5 > > > > > > Failed: > > > > > > 0) > > > > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > > > > t/modperl/printf.t (Wstat: 512 Tests: 0 > > > > > > Failed: > > > > > > 0) > > > > > > Non-zero exit status: 2 > > > > > > Parse errors: No plan found in TAP output > > > > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 > > > > > > sys > > > > > > + > > > > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > > > > Result: FAIL > > > > > > > > > > > > Attached the generated error_log.
> > > > > > > > > > > > > > > Thanks for the report. Do you still see these errors with > > > > > 2.0.9- > > > > > RC2 > > > > > and 5.22.0? > > > > > > > > > > What about with 5.20.2? (I.e. Are the errors specific to 5.22?)
> > > > > > > > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I > > > > tried > > > > on > > > > Debian wheezy and FreeBSD 9.2: > > > > > > > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl- > > > > 2.0.9- > > > > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 > > > > -I/usr/include > > > > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe > > > > -fstack- > > > > protector -I/usr/local/include -D_LARGEFILE_SOURCE > > > > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > > > > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X -O2 > > > > -fPIC \ > > > > -c modperl_filter.c && mv modperl_filter.o > > > > modperl_filter.lo > > > > modperl_filter.c: In function 'modperl_run_filter': > > > > modperl_filter.c:538:17: error: unknown type name > > > > 'modperl_interp_t' > > > > modperl_filter.c:538:17: warning: initialization makes pointer > > > > from > > > > integer without a cast [enabled by default] > > > > modperl_filter.c:538:17: error: request for member 'refcnt' in > > > > something not a structure or union > > > > modperl_filter.c:549:9: error: unknown type name > > > > 'modperl_interp_t' > > > > modperl_filter.c:549:9: warning: initialization makes pointer > > > > from > > > > integer without a cast [enabled by default] > > > > modperl_filter.c:549:9: error: request for member 'refcnt' in > > > > something not a structure or union > > > > modperl_filter.c:553:9: error: unknown type name > > > > 'modperl_interp_t' > > > > modperl_filter.c:553:9: warning: initialization makes pointer > > > > from > > > > integer without a cast [enabled by default] > > > > modperl_filter.c:553:9: error: request for member 'refcnt' in > > > > something not a structure or union > > > > make[1]: *** [modperl_filter.lo] Error 1 > > > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9- > > > > rc2/src/modules/perl' > > > > make: *** [modperl_lib] Error 2 > > > > [3] 14308
> > > > > > And with a threaded perl 5.22.0 on Debian/wheezy things are > > > slightly > > > better: compilation works, but linking fails: > > > > > > cc -shared -O2 -L/usr/local/lib -fstack-protector \ > > > \ > > > mod_perl.lo modperl_interp.lo modperl_tipool.lo > > > modperl_log.lo > > > modperl_config.lo modperl_cmd.lo modperl_options.lo > > > modperl_callback.lo modperl_handler.lo modperl_gtop.lo > > > modperl_util.lo > > > modperl_io.lo modperl_io_apache.lo modperl_filter.lo > > > modperl_bucket.lo > > > modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo > > > modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo > > > modperl_perl_pp.lo modperl_sys.lo modperl_module.lo > > > modperl_svptr_table.lo modperl_const.lo modperl_constants.lo > > > modperl_apache_compat.lo modperl_error.lo modperl_debug.lo > > > modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo > > > modperl_directives.lo modperl_flags.lo modperl_xsinit.lo > > > modperl_exports.lo -Wl,-E -fstack-protector -L/usr/local/lib > > > -L/opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE > > > -lperl > > > -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc \ > > > -o mod_perl.so > > > /usr/bin/ld: /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > > > `.rodata.str1.8' can not be used when making a shared object; > > > recompile with -fPIC > > > /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > > multi/CORE/libperl.a: > > > could not read symbols: Bad value > > > collect2: error: ld returned 1 exit status > > > make[1]: *** [mod_perl.so] Error 1 > > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9- > > > rc2/src/modules/perl' > > > make: *** [modperl_lib] Error 2
> > > > > > I'm afraid I don't know what the problem here is. Is it unique to > > 5.22 > > or does the same thing happen with a threaded build on the same > > system > > but using 5.20 instead? > > > > If it's just a 5.22 problem then I might pass over it for now (unless > > anyone else can fix it) since I already know of a big problem on 5.22 > > (CPAN RT#101962). We could just add a note to README to say that 5.22 > > isn't yet supported: Make 2.0.9 the release that supports httpd-2.4 > > (which is what everyone is waiting for, and has been for too long), > > and delay perl-5.22 support for 2.0.10 if need be.
> > I tried to get modperl working on the following systems: > > unthreaded 5.18.4 on Debian/wheezy with putback patch: compiles, but a > linker error happens: > > /usr/bin/ld: /opt/perl-5.18.4/lib/5.18.4/x86_64- > linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against > `PL_sv_yes' can not be used when making a shared object; recompile > with -fPIC > /opt/perl-5.18.4/lib/5.18.4/x86_64-linux/CORE/libperl.a: could not > read symbols: Bad value > > unthreaded 5.22.0 on FreeBSD 9.2 with putback patch: compiles, but a > linker error happens: > > /usr/bin/ld: /usr/perl5.22.0p/lib/5.22.0/amd64- > freebsd/CORE/libperl.a(op.o): relocation R_X86_64_32S against > `PL_sv_yes' can not be used when making a shared object; recompile > with -fPIC > /usr/perl5.22.0p/lib/5.22.0/amd64-freebsd/CORE/libperl.a: could not > read symbols: Bad value > > threaded 5.20.0 on FreeBSD 9.2 without putback patch: compiles, links > and tests successfully. > > threaded 5.22.0 on FreeBSD 9.2 without putback patch: compiles, but a > linker error happens: > > /usr/bin/ld: /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread- > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > `PL_op_mutex' can not be used when making a shared object; recompile > with -fPIC > /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread-multi/CORE/libperl.a: > could not read symbols: Bad value
I've enquired about errors of this kind over on perl5-porters since I do not understand the problem myself: http://www.nntp.perl.org/group/perl.perl5.porters/2015/06/msg228422.html Seems like this problem may have come up before. Leon has asked whether those perls were compiled with useshrplib?
On Thu Jun 04 07:15:51 2015, SHAY wrote: Show quoted text
> On Wed Jun 03 15:00:49 2015, SREZIC wrote:
> > On 2015-06-03 03:56:44, SHAY wrote:
> > > On Tue Jun 02 15:33:31 2015, SREZIC wrote:
> > > > On 2015-06-02 15:32:00, SREZIC wrote:
> > > > > On 2015-06-02 13:39:46, SHAY wrote:
> > > > > > On Sat Mar 21 12:52:15 2015, SREZIC wrote:
> > > > > > > After the workaround described in > > > > > > > https://rt.cpan.org/Ticket/Display.html?id=101144 I was > > > > > > > able > > > > > > > to > > > > > > > compile mod_perl from SVN on a FreeBSD 9.2 system with perl > > > > > > > 5.21.10. > > > > > > > "make test" gives me the following error summary: > > > > > > > > > > > > > > Test Summary Report > > > > > > > ------------------- > > > > > > > t/apache/util.t (Wstat: 0 Tests: 8 > > > > > > > Failed: > > > > > > > 4) > > > > > > > Failed tests: 1-4 > > > > > > > t/api/uri.t (Wstat: 0 Tests: 12 > > > > > > > Failed: > > > > > > > 0) > > > > > > > Parse errors: Bad plan. You planned 24 tests but ran 12. > > > > > > > t/apr-ext/uri.t (Wstat: 65280 Tests: > > > > > > > 12 > > > > > > > Failed: > > > > > > > 0) > > > > > > > Non-zero exit status: 255 > > > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > > > t/apr/uri.t (Wstat: 0 Tests: 12 > > > > > > > Failed: > > > > > > > 0) > > > > > > > Parse errors: Bad plan. You planned 36 tests but ran 12. > > > > > > > t/directive/perlloadmodule3.t (Wstat: 0 Tests: 3 > > > > > > > Failed: > > > > > > > 3) > > > > > > > Failed tests: 1-3 > > > > > > > t/filter/both_str_native_remove.t (Wstat: 0 Tests: 8 > > > > > > > Failed: > > > > > > > 4) > > > > > > > Failed tests: 1, 6-8 > > > > > > > t/modperl/print.t (Wstat: 0 Tests: 5 > > > > > > > Failed: > > > > > > > 0) > > > > > > > Parse errors: Bad plan. You planned 6 tests but ran 5. > > > > > > > t/modperl/printf.t (Wstat: 512 Tests: 0 > > > > > > > Failed: > > > > > > > 0) > > > > > > > Non-zero exit status: 2 > > > > > > > Parse errors: No plan found in TAP output > > > > > > > Files=252, Tests=2539, 548 wallclock secs ( 3.24 usr 1.48 > > > > > > > sys > > > > > > > + > > > > > > > 356.99 cusr 76.09 csys = 437.80 CPU) > > > > > > > Result: FAIL > > > > > > > > > > > > > > Attached the generated error_log.
> > > > > > > > > > > > > > > > > > Thanks for the report. Do you still see these errors with > > > > > > 2.0.9- > > > > > > RC2 > > > > > > and 5.22.0? > > > > > > > > > > > > What about with 5.20.2? (I.e. Are the errors specific to > > > > > > 5.22?)
> > > > > > > > > > Compilation fails with 2.0.9-RC2 & unthreaded perl 5.22.0. I > > > > > tried > > > > > on > > > > > Debian wheezy and FreeBSD 9.2: > > > > > > > > > > cc -I/tmp/mod_perl-2.0.9-rc2/src/modules/perl -I/tmp/mod_perl- > > > > > 2.0.9- > > > > > rc2/xs -I/usr/include/apr-1.0 -I/usr/include/apr-1.0 > > > > > -I/usr/include > > > > > -I/usr/include/apache2 -fwrapv -fno-strict-aliasing -pipe > > > > > -fstack- > > > > > protector -I/usr/local/include -D_LARGEFILE_SOURCE > > > > > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -I/opt/perl- > > > > > 5.22.0/lib/5.22.0/x86_64-linux/CORE -DMOD_PERL -DMP_COMPAT_1X > > > > > -O2 > > > > > -fPIC \ > > > > > -c modperl_filter.c && mv modperl_filter.o > > > > > modperl_filter.lo > > > > > modperl_filter.c: In function 'modperl_run_filter': > > > > > modperl_filter.c:538:17: error: unknown type name > > > > > 'modperl_interp_t' > > > > > modperl_filter.c:538:17: warning: initialization makes pointer > > > > > from > > > > > integer without a cast [enabled by default] > > > > > modperl_filter.c:538:17: error: request for member 'refcnt' in > > > > > something not a structure or union > > > > > modperl_filter.c:549:9: error: unknown type name > > > > > 'modperl_interp_t' > > > > > modperl_filter.c:549:9: warning: initialization makes pointer > > > > > from > > > > > integer without a cast [enabled by default] > > > > > modperl_filter.c:549:9: error: request for member 'refcnt' in > > > > > something not a structure or union > > > > > modperl_filter.c:553:9: error: unknown type name > > > > > 'modperl_interp_t' > > > > > modperl_filter.c:553:9: warning: initialization makes pointer > > > > > from > > > > > integer without a cast [enabled by default] > > > > > modperl_filter.c:553:9: error: request for member 'refcnt' in > > > > > something not a structure or union > > > > > make[1]: *** [modperl_filter.lo] Error 1 > > > > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9- > > > > > rc2/src/modules/perl' > > > > > make: *** [modperl_lib] Error 2 > > > > > [3] 14308
> > > > > > > > And with a threaded perl 5.22.0 on Debian/wheezy things are > > > > slightly > > > > better: compilation works, but linking fails: > > > > > > > > cc -shared -O2 -L/usr/local/lib -fstack-protector \ > > > > \ > > > > mod_perl.lo modperl_interp.lo modperl_tipool.lo > > > > modperl_log.lo > > > > modperl_config.lo modperl_cmd.lo modperl_options.lo > > > > modperl_callback.lo modperl_handler.lo modperl_gtop.lo > > > > modperl_util.lo > > > > modperl_io.lo modperl_io_apache.lo modperl_filter.lo > > > > modperl_bucket.lo > > > > modperl_mgv.lo modperl_pcw.lo modperl_global.lo modperl_env.lo > > > > modperl_cgi.lo modperl_perl.lo modperl_perl_global.lo > > > > modperl_perl_pp.lo modperl_sys.lo modperl_module.lo > > > > modperl_svptr_table.lo modperl_const.lo modperl_constants.lo > > > > modperl_apache_compat.lo modperl_error.lo modperl_debug.lo > > > > modperl_common_util.lo modperl_common_log.lo modperl_hooks.lo > > > > modperl_directives.lo modperl_flags.lo modperl_xsinit.lo > > > > modperl_exports.lo -Wl,-E -fstack-protector -L/usr/local/lib > > > > -L/opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread-multi/CORE > > > > -lperl > > > > -lpthread -lnsl -ldl -lm -lcrypt -lutil -lc \ > > > > -o mod_perl.so > > > > /usr/bin/ld: /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > > > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > > > > `.rodata.str1.8' can not be used when making a shared object; > > > > recompile with -fPIC > > > > /opt/perl-5.22.0t/lib/5.22.0/x86_64-linux-thread- > > > > multi/CORE/libperl.a: > > > > could not read symbols: Bad value > > > > collect2: error: ld returned 1 exit status > > > > make[1]: *** [mod_perl.so] Error 1 > > > > make[1]: Leaving directory `/tmp/mod_perl-2.0.9- > > > > rc2/src/modules/perl' > > > > make: *** [modperl_lib] Error 2
> > > > > > > > > I'm afraid I don't know what the problem here is. Is it unique to > > > 5.22 > > > or does the same thing happen with a threaded build on the same > > > system > > > but using 5.20 instead? > > > > > > If it's just a 5.22 problem then I might pass over it for now > > > (unless > > > anyone else can fix it) since I already know of a big problem on > > > 5.22 > > > (CPAN RT#101962). We could just add a note to README to say that > > > 5.22 > > > isn't yet supported: Make 2.0.9 the release that supports httpd-2.4 > > > (which is what everyone is waiting for, and has been for too long), > > > and delay perl-5.22 support for 2.0.10 if need be.
> > > > I tried to get modperl working on the following systems: > > > > unthreaded 5.18.4 on Debian/wheezy with putback patch: compiles, but > > a > > linker error happens: > > > > /usr/bin/ld: /opt/perl-5.18.4/lib/5.18.4/x86_64- > > linux/CORE/libperl.a(op.o): relocation R_X86_64_32S against > > `PL_sv_yes' can not be used when making a shared object; recompile > > with -fPIC > > /opt/perl-5.18.4/lib/5.18.4/x86_64-linux/CORE/libperl.a: could not > > read symbols: Bad value > > > > unthreaded 5.22.0 on FreeBSD 9.2 with putback patch: compiles, but a > > linker error happens: > > > > /usr/bin/ld: /usr/perl5.22.0p/lib/5.22.0/amd64- > > freebsd/CORE/libperl.a(op.o): relocation R_X86_64_32S against > > `PL_sv_yes' can not be used when making a shared object; recompile > > with -fPIC > > /usr/perl5.22.0p/lib/5.22.0/amd64-freebsd/CORE/libperl.a: could not > > read symbols: Bad value > > > > threaded 5.20.0 on FreeBSD 9.2 without putback patch: compiles, links > > and tests successfully. > > > > threaded 5.22.0 on FreeBSD 9.2 without putback patch: compiles, but a > > linker error happens: > > > > /usr/bin/ld: /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread- > > multi/CORE/libperl.a(op.o): relocation R_X86_64_32 against > > `PL_op_mutex' can not be used when making a shared object; recompile > > with -fPIC > > /usr/perl5.22.0t/lib/5.22.0/amd64-freebsd-thread- > > multi/CORE/libperl.a: > > could not read symbols: Bad value
> > > I've enquired about errors of this kind over on perl5-porters since I > do not understand the problem myself: > > http://www.nntp.perl.org/group/perl.perl5.porters/2015/06/msg228422.html > > Seems like this problem may have come up before. > > Leon has asked whether those perls were compiled with useshrplib?
The answer seems to be that you need to recompile perl with -Duseshrplib. See Petr Pisar's response in particular: http://www.nntp.perl.org/group/perl.perl5.porters/2015/06/msg228437.html