Tom Murphy wrote:
Resurrecting an old one here, but I am running into the same issue. Has
anyone successfully ported Apache::SubProcess to work with Perl 5.8.x and
MP1? If not, a pointer to anything that will help with the transition.

As this email mentions, I've ported A-SP to mp2 and it uses APR::PerlIO, which is part of mp2.


May be you could take a peek at Apache-Peek, I've ported it to run with 5.8, also using a local PerlIO layer implementation (for mp1 too).

Also have you tried using perl w/ perlio disabled? that may do the trick as well.

Thanks,

Tom Murphy


-----Original Message-----
From: Stas Bekman [mailto:[EMAIL PROTECTED]
Sent: Tuesday, November 25, 2003 3:12 PM
To: Rafael Garcia-Suarez
Cc: [EMAIL PROTECTED]
Subject: Re: Apache::SubProcess build problem


Rafael Garcia-Suarez wrote:

I can't build Apache::SubProcess 0.03 on AIX 5.2 with perl 5.8.2,
mod_perl 1.29 and apache 1.3.29. The error (pasted below)

puzzles me ;

any clues ?


$ make cp SubProcess.pm blib/lib/Apache/SubProcess.pm
/opt/hexaflux/perl/bin/perl -e 'use

ExtUtils::Mksymlists; Mksymlists("NAME" => "Apache::SubProcess", "DL_FUNCS" => { }, "FUNCLIST" => [], "DL_VARS" => []);'


/opt/hexaflux/perl/bin/perl

/opt/hexaflux/perl/lib/5.8.2/ExtUtils/xsubpp -typemap /opt/hexaflux/perl/lib/5.8.2/ExtUtils/typemap -typemap /opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/typemap
SubProcess.xs > SubProcess.xsc && mv SubProcess.xsc SubProcess.c


cc -c

-I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
de -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
de/modules/perl -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
de/include -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
de/regex -I/opt/hexaflux/perl/lib/site_perl/5.8.2/aix/auto/Apache/inclu
de/os/unix -D_ALL_SOURCE -D_ANSI_C_SOURCE -D_POSIX_SOURCE -qmaxmem=16384 -qnoansialias -DUSE_NATIVE_DLOPEN -DNO_LOCALE -q32 -D_LARGE_FILES -qlonglong -O -DVERSION=\"0.03\" -DXS_VERSION=\"0.03\" "-I/opt/hexaflux/perl/lib/5.8.2/aix/CORE" -g SubProcess.c


"SubProcess.xs", line 15.28: 1506-280 (W) Function argument

assignment between types "struct _PerlIO**" and "struct {...}*" is not allowed.


"SubProcess.xs", line 19.18: 1506-068 (W) Operation between

types "struct {...}*" and "struct _PerlIO**" is not allowed.

"SubProcess.xs", line 36.26: 1506-068 (W) Operation between

types "struct _PerlIO**" and "struct {...}*" is not allowed.

"SubProcess.xs", line 40.26: 1506-068 (W) Operation between

types "struct _PerlIO**" and "struct {...}*" is not allowed.

"SubProcess.xs", line 137.25: 1506-280 (W) Function

argument assignment between types "struct {...}*" and "struct _PerlIO**" is not allowed.


Running Mkbootstrap for Apache::SubProcess ()

It seems that that module needs to be updated to support 5.8.x IO, I get similar problems:


perl-5.8.2 Makefile.PL && make
Writing Makefile for Apache::SubProcess
cc -c -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
ache/include -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
ache/include/modules/perl -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
ache/include/include -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
ache/include/regex -I/home/stas/perl/5.8.2/lib/site_perl/5.8.2/i686-linux/auto/Ap
ache/include/os/unix -DDEBUGGING -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -I/usr/include/gdbm -g -DVERSION=\"0.03\" -DXS_VERSION=\"0.03\" -fpic "-I/home/stas/perl/5.8.2/lib/5.8.2/i686-linux/CORE" -g SubProcess.c
SubProcess.xs: In function `io_dup':
SubProcess.xs:15: warning: passing arg 1 of `Perl_PerlIO_fileno' from incompatible pointer type
SubProcess.xs:19: warning: assignment from incompatible pointer type
SubProcess.xs: In function `io_hook':
SubProcess.xs:36: warning: assignment from incompatible pointer type
SubProcess.xs:40: warning: assignment from incompatible pointer type
SubProcess.xs: In function `XS_Apache_pfclose':
SubProcess.xs:137: warning: passing arg 2 of `ap_pfclose' from incompatible pointer type
Running Mkbootstrap for Apache::SubProcess ()
chmod 644 SubProcess.bs
rm -f blib/arch/auto/Apache/SubProcess/SubProcess.so
LD_RUN_PATH="" cc -shared -L/usr/local/lib SubProcess.o -o blib/arch/auto/Apache/SubProcess/SubProcess.so
chmod 755 blib/arch/auto/Apache/SubProcess/SubProcess.so
cp SubProcess.bs blib/arch/auto/Apache/SubProcess/SubProcess.bs
chmod 644 blib/arch/auto/Apache/SubProcess/SubProcess.bs


It builds fine with 5.6.x. I ported it to mp2 (it's now part of the core), so I guess parts can be re-used from there. I had to reimplement the IO part for 5.8+.


chmod 644 SubProcess.bs
rm -f blib/arch/auto/Apache/SubProcess/SubProcess.so
LD_RUN_PATH="" ld -bhalt:4 -bM:SRE

-bI:/opt/hexaflux/perl/lib/5.8.2/aix/CORE/perl.exp -bE:SubProcess.exp -bnoentry -lc SubProcess.o -o blib/arch/auto/Apache/SubProcess/SubProcess.so


ld: 0711-317 ERROR: Undefined symbol: .sv2request_rec
ld: 0711-317 ERROR: Undefined symbol: .ap_cleanup_for_exec
ld: 0711-317 ERROR: Undefined symbol: .ap_pfclose
ld: 0711-317 ERROR: Undefined symbol: .ap_create_environment
ld: 0711-317 ERROR: Undefined symbol: .ap_error_log2stderr
ld: 0711-317 ERROR: Undefined symbol: .ap_call_exec
ld: 0711-317 ERROR: Undefined symbol: .ap_log_error
ld: 0711-317 ERROR: Undefined symbol: .ap_pcalloc
ld: 0711-317 ERROR: Undefined symbol: .ap_spawn_child
ld: 0711-317 ERROR: Undefined symbol: .perl_bless_request_rec
ld: 0711-317 ERROR: Undefined symbol: .perl_eval_ok
ld: 0711-317 ERROR: Undefined symbol: .mod_perl_gensym
ld: 0711-345 Use the -bloadmap or -bnoquiet option to

obtain more information.

make: The error code from the last command is 8.

Seems like it's trying to resolve symbols at linking time. (I think AIX always does)


You either need to tell it to ignore any linking problems by adding this linker flag:

-berok # I think you don't need -Wl, prefix as your uses ld directly

and hope that it'll resolve everything at the loading time, or give it the path to the symbol table export lists:

         -bI:$path/httpd.exp
         -bI:$path/modperl.exp

__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


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






--
__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:[EMAIL PROTECTED] http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com

--
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html



Reply via email to