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.
On Tue, Nov 20, 2018 at 6:29 AM Pierre Fichaud <[email protected]> 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. > > Can someone help ? > Thanks in advance, Pierre. > > ---------------------------------------------------------------------- > For IBM-MAIN subscribe / signoff / archive access instructions, > send email to [email protected] with the message: INFO IBM-MAIN > ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
