НА: Smoke [ebcdic] v5.21.9-247-g8e2863d FAI L(X) os/390 23.00 (2817/)

[email protected] (Yaroslav Kuzmin)
Newsgroups perl.mvs,perl.perl5.porters
Message-ID <[email protected]>
The problem with the module mro solved. It is necessary that the file names do not match. example mro_t.c и ext/mro/mro.c

I tested on branch khw/ebcdic
Change the file name  mro.c on mro_t.c made changes to files Makefile.SH  Makefile.micro MANIFEST
change define EBCDIC on EBCDIC_T in files mro_t.c and ext/mro/mro.c

all work

 То есть особенность компилятора xlc он не может обработать перекрестный вызов в функциях и совпадение имен файлов где находятся эти функции. По отдельности работает корректно .

------------------------------------------------------------------------
 Yaroslav Kuzmin
Developer C/C++ ,z/OS , Linux
3 Zhukovskiy Street ・ Miass, Chelyabinsk region 456318 ・ Russia
Tel:  +7.922.2.38.33.38
Email: [email protected]
Web: www.rocketsoftware.com

________________________________________
От: Yaroslav Kuzmin <[email protected]>
Отправлено: 11 марта 2015 г. 10:13
Кому: Karl Williamson; Perl5 Porters; perl-mvs
Тема: НА: Smoke [ebcdic] v5.21.9-247-g8e2863d FAIL(X) os/390 23.00 (2817/)

> But, there is one remaining large issue, which is the mro handling.  We
> need to reconcile this before that goes into blead.  What I recall my
> $work doing in this sort of situation 35 years ago was to mention the .o
> files that had cross references multiple times in the load line.  I also
> asked someone I know who works at IBM if he knew anything about this,
> and potential workarounds.  He wrote a program (attached) based on your
> description, and did not have the problems you have, using z/OS 2.1.

Ok , This example works correctly on z/OS
But testing in Perl

I changed #define  EBCDIC on #define _EBCDIC_ in files mro.c и ext/mro/mro.xs
An error has occurred, see where there are libraries  lib/auto/mro/mro.a и libperl.a

(00:50) RS12 : PDKUZM | ~/ussport/perl/perl-build :> xlc -o perl -qxplink -qdll  perlmain.o libperl.a lib/auto/B/B.a lib/auto/Compress/Raw/Bzip2/Bzip2.a lib/auto/Compress/Raw/Zlib/Zlib.a lib/auto/Cwd/Cwd.a lib/auto/Data/Dumper/Dumper.a lib/auto/Devel/PPPort/PPPort.a lib/auto/Devel/Peek/Peek.a lib/auto/Digest/MD5/MD5.a lib/auto/Digest/SHA/SHA.a lib/auto/Encode/Encode.a lib/auto/Fcntl/Fcntl.a lib/auto/File/DosGlob/DosGlob.a lib/auto/File/Glob/Glob.a lib/auto/Filter/Util/Call/Call.a lib/auto/Hash/Util/Util.a lib/auto/Hash/Util/FieldHash/FieldHash.a lib/auto/I18N/Langinfo/Langinfo.a lib/auto/IO/IO.a lib/auto/IPC/SysV/SysV.a lib/auto/List/Util/Util.a lib/auto/MIME/Base64/Base64.a lib/auto/Math/BigInt/FastCalc/FastCalc.a lib/auto/NDBM_File/NDBM_File.a lib/auto/Opcode/Opcode.a lib/auto/POSIX/POSIX.a lib/auto/PerlIO/encoding/encoding.a lib/auto/PerlIO/mmap/mmap.a lib/auto/PerlIO/scalar/scalar.a lib/auto/PerlIO/via/via.a lib/auto/SDBM_File/SDBM_File.a lib/auto/Socket/Socket.a lib/auto/Storable/Storable.a lib/auto/Sys/Hostname/Hostname.a lib/auto/Sys/Syslog/Syslog.a lib/auto/Tie/Hash/NamedCapture/NamedCapture.a lib/auto/Time/HiRes/HiRes.a lib/auto/Time/Piece/Piece.a lib/auto/Unicode/Collate/Collate.a lib/auto/arybase/arybase.a lib/auto/attributes/attributes.a lib/auto/mro/mro.a lib/auto/re/re.a lib/auto/threads/threads.a lib/auto/threads/shared/shared.a lib/auto/Encode/Byte/Byte.a lib/auto/Encode/CN/CN.a lib/auto/Encode/EBCDIC/EBCDIC.a lib/auto/Encode/JP/JP.a lib/auto/Encode/KR/KR.a lib/auto/Encode/Symbol/Symbol.a lib/auto/Encode/TW/TW.a lib/auto/Encode/Unicode/Unicode.a `cat ext.libs` -lm -lc
 IEW2459W 9206 INCLUDED MEMBER boot_mro FAILED TO RESOLVE REFERENCE.
 IEW2497W 9229 THE SYMBOL boot_mro WAS EXPECTED TO BE RESOLVED BY INCLUDING
          MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /000002B
 IEW2456E 9207 SYMBOL boot_mro UNRESOLVED.  MEMBER COULD NOT BE INCLUDED FROM
          THE DESIGNATED CALL LIBRARY.
FSUM3065 The LINKEDIT step ended with return code 8.

Now swap the libraries  lib/auto/mro/mro.a и libperl.a

(00:51) RS12 : PDKUZM | ~/ussport/perl/perl-build :> xlc -o perl -qxplink -qdll  perlmain.o lib/auto/mro/mro.a libperl.a lib/auto/B/B.a lib/auto/Compress/Raw/Bzip2/Bzip2.a lib/auto/Compress/Raw/Zlib/Zlib.a lib/auto/Cwd/Cwd.a lib/auto/Data/Dumper/Dumper.a lib/auto/Devel/PPPort/PPPort.a lib/auto/Devel/Peek/Peek.a lib/auto/Digest/MD5/MD5.a lib/auto/Digest/SHA/SHA.a lib/auto/Encode/Encode.a lib/auto/Fcntl/Fcntl.a lib/auto/File/DosGlob/DosGlob.a lib/auto/File/Glob/Glob.a lib/auto/Filter/Util/Call/Call.a lib/auto/Hash/Util/Util.a lib/auto/Hash/Util/FieldHash/FieldHash.a lib/auto/I18N/Langinfo/Langinfo.a lib/auto/IO/IO.a lib/auto/IPC/SysV/SysV.a lib/auto/List/Util/Util.a lib/auto/MIME/Base64/Base64.a lib/auto/Math/BigInt/FastCalc/FastCalc.a lib/auto/NDBM_File/NDBM_File.a lib/auto/Opcode/Opcode.a lib/auto/POSIX/POSIX.a lib/auto/PerlIO/encoding/encoding.a lib/auto/PerlIO/mmap/mmap.a lib/auto/PerlIO/scalar/scalar.a lib/auto/PerlIO/via/via.a lib/auto/SDBM_File/SDBM_File.a lib/auto/Socket/Socket.a lib/auto/Storable/Storable.a lib/auto/Sys/Hostname/Hostname.a lib/auto/Sys/Syslog/Syslog.a lib/auto/Tie/Hash/NamedCapture/NamedCapture.a lib/auto/Time/HiRes/HiRes.a lib/auto/Time/Piece/Piece.a lib/auto/Unicode/Collate/Collate.a lib/auto/arybase/arybase.a lib/auto/attributes/attributes.a lib/auto/re/re.a lib/auto/threads/threads.a lib/auto/threads/shared/shared.a lib/auto/Encode/Byte/Byte.a lib/auto/Encode/CN/CN.a lib/auto/Encode/EBCDIC/EBCDIC.a lib/auto/Encode/JP/JP.a lib/auto/Encode/KR/KR.a lib/auto/Encode/Symbol/Symbol.a lib/auto/Encode/TW/TW.a lib/auto/Encode/Unicode/Unicode.a `cat ext.libs` -lm -lc
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_register FAILED TO RESOLVE REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_register WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_meta_init FAILED TO RESOLVE REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_meta_init WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_get_private_data FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_get_private_data WAS EXPECTED TO BE RESOLVED
          BY INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME
          /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_set_private_data FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_set_private_data WAS EXPECTED TO BE RESOLVED
          BY INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME
          /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_get_linear_isa FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_get_linear_isa WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_method_changed_in FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_method_changed_in WAS EXPECTED TO BE RESOLVED
          BY INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME
          /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_package_moved FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_package_moved WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_mro_isa_changed_in FAILED TO RESOLVE
          REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_mro_isa_changed_in WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2459W 9206 INCLUDED MEMBER Perl_boot_core_mro FAILED TO RESOLVE REFERENCE.
 IEW2497W 9229 THE SYMBOL Perl_boot_core_mro WAS EXPECTED TO BE RESOLVED BY
          INCLUDING MEMBER mro.o FROM THE LIBRARY DEFINED BY DDNAME /0000003
 IEW2456E 9207 SYMBOL Perl_mro_set_private_data UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_get_private_data UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_meta_init UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_register UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_boot_core_mro UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_isa_changed_in UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_package_moved UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_method_changed_in UNRESOLVED.  MEMBER COULD NOT
          BE INCLUDED FROM THE DESIGNATED CALL LIBRARY.
 IEW2456E 9207 SYMBOL Perl_mro_get_linear_isa UNRESOLVED.  MEMBER COULD NOT BE
          INCLUDED FROM THE DESIGNATED CALL LIBRARY.
FSUM3065 The LINKEDIT step ended with return code 8.

errors

IEW2456E    http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2M8C1/SPTKK2456E
IEW2497W   http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2M8C1/SPTOB12516
IEW2459W   http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/IEA2M8C1/SPTKK2459W
FSUM3065   http://publibz.boulder.ibm.com/cgi-bin/bookmgr_OS390/BOOKS/BPXZA8C0/SPTOB63267


As that so :)

------------------------------------------------------------------------
 Yaroslav Kuzmin
Developer C/C++ ,z/OS , Linux
3 Zhukovskiy Street ・ Miass, Chelyabinsk region 456318 ・ Russia
Tel:  +7.922.2.38.33.38
Email: [email protected]
Web: www.rocketsoftware.com



================================
Rocket Software, Inc. and subsidiaries ■ 77 Fourth Avenue, Waltham MA 02451 ■ +1 800.966.3270 ■ +1 781.577.4321
Unsubscribe From Commercial Email C [email protected]
Manage Your Subscription Preferences - http://info.rocketsoftware.com/GlobalSubscriptionManagementEmailFooter_SubscriptionCenter.html
Privacy Policy - http://www.rocketsoftware.com/company/legal/privacy-policy
================================

This communication and any attachments may contain confidential information of Rocket Software, Inc. All unauthorized use, disclosure or distribution is prohibited. If you are not the intended recipient, please notify Rocket Software immediately and destroy all copies of this communication. Thank you.
================================
Rocket Software, Inc. and subsidiaries ■ 77 Fourth Avenue, Waltham MA 02451 ■ +1 800.966.3270 ■ +1 781.577.4321
Unsubscribe From Commercial Email C [email protected]
Manage Your Subscription Preferences - http://info.rocketsoftware.com/GlobalSubscriptionManagementEmailFooter_SubscriptionCenter.html
Privacy Policy - http://www.rocketsoftware.com/company/legal/privacy-policy
================================

This communication and any attachments may contain confidential information of Rocket Software, Inc. All unauthorized use, disclosure or distribution is prohibited. If you are not the intended recipient, please notify Rocket Software immediately and destroy all copies of this communication. Thank you.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.