On Tue, 20 Nov 2018 07:37:40 +1100, Attila Fogarasi wrote: >You used the wrong version of the static runtime library. SYS1.SCCR6BND >is used with Metal C applications that have been compiled using LP64 and >run AMODE 64. SYS1.SCCR3BND is used for ILP32 and run AMODE 31. > Shouldn't the C89 (XLC?) executive be smart enough to invoke the compiler, assembler, and Binder with consistent options and copybook paths? The current scheme is dreadfully error-prone. I was dismayed by the configuration files that must be supplied for XLC.
>On Tue, Nov 20, 2018 at 6:29 AM Pierre Fichaud wrote: > >> I am converting (or recompiling) C programs to run in 64-bit mode. I need >> to convert 31-bit LE-compliant assembler modules to run in 64-bit mode. The >> assembler program uses the LE-compliant prolog and epilog macros. >> >> The C program compiles cleanly as does my assembler program. >> >> >> At link time, I get : >> 000103 IEW2469E 9907 THE ATTRIBUTES OF A REFERENCE TO memmove FROM >> SECTION >> 000104 /path/path.blah/blah1 DO NOT MATCH THE ATTRIBUTES OF THE >> TARGET >> 000105 SYMBOL. REASON 2 >> >> REASON 2 - The xplink attributes of the reference and target do not match. >> >> memmove is a C library function. >> >> I compile the C code in Unix using c89 >> C compiler options >> ENUM(INT),DLL(NOCBA),langlvl(LIBEXT),ARCH(5),TUNE(7),GONUMBER,FLAG(I),XPLINK(STOREARGS),EXPORTALL,SPILL(448),LP64,GOFF >> >> Binder options: L,DLL,LET=8,LIST,MAP,XREF,DYNAM=DLL >> I'm not sure about L and DLL. >> >> I've done 64-bit assembler programming and C but not both together. -- gil ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
