Error in compiling ffi on HPUX-IA64 for 32-bit ruby

Jay T via libffi-discuss libffi-discuss@sourceware.org
Wed Feb 12 04:49:00 GMT 2020


Hello,On HP-UX IA64, I need help with the following errors when I compile ffi, as part of the ext package for 32-bit ruby:
"src/ia64/ffi.c", line 41: error #3088: an attribute specifies a mode 
incompatible with "void *"
   typedef void *PTR64 __attribute__((mode(DI)));
                                      ^

"src/ia64/ffi.c", line 116: error #2018: expected a ")"
         stf_spill (fpaddr, *(float *) addr);
         ^

"src/ia64/ffi.c", line 119: error #2018: expected a ")"
         stf_spill (fpaddr, *(double *) addr);
         ^

"src/ia64/ffi.c", line 122: error #2018: expected a ")"
         stf_spill (fpaddr, *(__float80 *) addr);
         ^

"src/ia64/ffi.c", line 140: error #2018: expected a ")"
       ldf_fill (result, fpaddr);
       ^

"src/ia64/ffi.c", line 147: error #2018: expected a ")"
       ldf_fill (result, fpaddr);
       ^

"src/ia64/ffi.c", line 154: error #2018: expected a ")"
       ldf_fill (result, fpaddr);
       ^

"src/ia64/ffi.c", line 187: error #3578: case label value has already 
appeared in this switch at line 181
       case FFI_TYPE_LONGDOUBLE:
            ^

"src/ia64/ffi.c", line 327: error #2018: expected a ")"
           stf_spill (&stack->fp_regs[fpcount++], *(float *)avalue[i]);
           ^

"src/ia64/ffi.c", line 337: error #2018: expected a ")"
           stf_spill (&stack->fp_regs[fpcount++], *(double *)avalue[i]);
           ^

"src/ia64/ffi.c", line 341: error #3578: case label value has already 
appeared in this switch at line 335
       case FFI_TYPE_LONGDOUBLE:
            ^

"src/ia64/ffi.c", line 345: error #2018: expected a ")"
           stf_spill (&stack->fp_regs[fpcount++], *(__float80 *)avalue[i]);
           ^

"src/ia64/ffi.c", line 371: error #3143: arithmetic on pointer to void 
or function type
                      avalue[i] + offset);
                                ^

"src/ia64/ffi.c", line 499: error #2018: expected a ")"
             ldf_fill (result, addr);
             ^

"src/ia64/ffi.c", line 513: error #2018: expected a ")"
             ldf_fill (result, addr);
             ^

"src/ia64/ffi.c", line 521: error #3578: case label value has already 
appeared in this switch at line 507
       case FFI_TYPE_LONGDOUBLE:
            ^

"src/ia64/ffi.c", line 529: error #2018: expected a ")"
             ldf_fill (result, addr);
             ^

"src/ia64/ffi.c", line 560: error #3143: arithmetic on pointer to void 
or function type
               hfa_type_store (hfa_type, addr + offset,
                                              ^

"src/ia64/ffi.c", line 568: error #3143: arithmetic on pointer to void 
or function type
             memcpy (addr + offset, (char *)stack->gp_regs + gp_offset,
                          ^

19 errors detected in the compilation of "src/ia64/ffi.c".
make[5]: *** [Makefile:1362: src/ia64/ffi.lo] Error 1
make[5]: Leaving directory '/mytemp/ruby-2.4.6/ext/fiddle/libffi-3.2.1'
make[4]: *** [Makefile:1596: all-recursive] Error 1
make[4]: Leaving directory '/mytemp/ruby-2.4.6/ext/fiddle/libffi-3.2.1'
make[3]: *** [Makefile:730: all] Error 2
make[3]: Leaving directory '/mytemp/ruby-2.4.6/ext/fiddle/libffi-3.2.1'
make[2]: *** [Makefile:371: libffi-3.2.1/.libs/libffi_convenience.a] Error 2
make[2]: Leaving directory '/mytemp/ruby-2.4.6/ext/fiddle'
make[1]: *** [exts.mk:212: ext/fiddle/all] Error 2
make[1]: Leaving directory '/mytemp/ruby-2.4.6'
make: *** [uncommon.mk:220: build-ext] Error 2


Can you please help me?
Thanks and regards,Jay


More information about the Libffi-discuss mailing list