Front page | perl.perl5.porters |
Postings from October 2015
more compiling and z/OS
Thread Next
From:
Karl Williamson
Date:
October 8, 2015 15:51
Subject:
more compiling and z/OS
Message ID:
561690FC.8070309@khwilliamson.com
The only other failing test in the z/OS smokes is also
compiling-related. It is possible to embed Perl in a C language
application, using ExtUtils::Embed. The test file for that, Embed.t, is
failing. I have instrumented Embed.t to give debugging output. The
output is given below. Embed.t is attached to this email
What is happening is that it is trying to compile a .c file that is in
the __DATA__ at the end of Embed.t (hence you can see it in the
attachment) into the file 'embed_test'. It's not finding several Perl
subroutines, and the loader exits 8. Nevertheless, Embed.t calls
system('./embed_test') and that results in some garbage output. The
MALFORMED lines are from my program that I used to translate from
UTF-EBCDIC back to ASCII so I can read it. The garbage output is not
UTF-EBCDIC, the malformation lines tell what the code points are. My
guess is that it is binary.
I don't know enough about the z/OS compile-load system to debug this,
but hopefully the problem is obvious to someone who does.
Tracing output follows:
=======================================================================
../lib/ExtUtils/t/Embed.t: 138: About to backtick:
'c99 -o embed_test -I.. -qlanglvl=extended:extc89:extc99 -qlongname
-qxplink -qdll -qfloat=ieee -qhaltonmsg=3296:4108 -DMAXSIG=39 -DOEMVS
-D_OE_SOCKETS -D_XOPEN_SOURCE_EXTENDED -D_ALL_SOURCE -DYYDYNAMIC
-D_POSIX_SOURCE=1 -D_SHR_ENVIRON -DPERL_EXTERNAL_GLOB -qexportall -qdll
-qxplink embed_test.c'
INFORMATIONAL CCN3684 ./embed_test.c:17 Exporting function main is
not allowed.
IEW2456E 9207 SYMBOL Perl_sys_term UNRESOLVED. MEMBER COULD NOT BE
INCLUDED
FROM THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL perl_free UNRESOLVED. MEMBER COULD NOT BE
INCLUDED FROM
THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL perl_destruct UNRESOLVED. MEMBER COULD NOT BE
INCLUDED
FROM THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL perl_run UNRESOLVED. MEMBER COULD NOT BE
INCLUDED FROM
THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL perl_parse UNRESOLVED. MEMBER COULD NOT BE
INCLUDED FROM
THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL PL_exit_flags UNRESOLVED. MEMBER COULD NOT BE
INCLUDED
FROM THE DESIGNATED CALL LIBRARY. NAME SPACE = 3
IEW2456E 9207 SYMBOL perl_construct UNRESOLVED. MEMBER COULD NOT BE
INCLUDED
FROM THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL perl_alloc UNRESOLVED. MEMBER COULD NOT BE
INCLUDED FROM
THE DESIGNATED CALL LIBRARY.
IEW2456E 9207 SYMBOL Perl_sys_init3 UNRESOLVED. MEMBER COULD NOT BE
INCLUDED
FROM THE DESIGNATED CALL LIBRARY.
FSUM3065 The LINKEDIT step ended with return code 8.
../lib/ExtUtils/t/Embed.t: 141 $? from backtick is '768'
../lib/ExtUtils/t/Embed.t: 152: About to call system('./embed_test')
IEWPLMH: ./embed_test 3: FSUM7351 not found
ø byte 'C6' is not a valid continuation
_MALFORMED_(orig="0x90=DEGREE"; I8=0xc6)°byte 'D' is not a valid
continuation
_MALFORMED_(orig="0x8a=LEFT-POINTING DOUBLE ANGLE QUOTE"; I8=0x0d)«
character U+46 should occupy 1 bytes, not 2
_MALFORMED_(expected=1; got=2; orig=0x76)FgxMbyte '78' is not a valid
continuation
_MALFORMED_(orig="0x8a=LEFT-POINTING DOUBLE ANGLE QUOTE"; I8=0x78)«xbyte
'18' is not a valid continuation
_MALFORMED_(orig="0xb4=COPYRIGHT"; I8=0x18)©x4ì-byte '88' is not a
valid continuation
_MALFORMED_(orig="0x80=O with '/'"; I8=0x88)Ø5650ZOS: ./embed_test 9:
FSUM7351 not found
./embed_test 49: FSUM7332 syntax error: got (, expecting Newline
../lib/ExtUtils/t/Embed.t: 157: system() returned 256
Thread Next
-
more compiling and z/OS
by Karl Williamson