gcc c.c c.c: In function ‘main’: c.c:10: error: ‘ULLONG_MAX’ undeclared (first use in this function) c.c:10: error: (Each undeclared identifier is reported only once c.c:10: error: for each function it appears in.)
this is not surprising when you look at the output (attached) of gcc -dM -E limits.h On Wed, May 13, 2015 at 3:03 PM, Jeremy Yallop <[email protected]> wrote: > On 13 May 2015 at 13:51, Thomas Braibant <[email protected]> > wrote: > > For some obscure reason, I need to compile Ctypes on centos 5.x in a > hurry. > > Unfortunately, I get the following error message in the compilation > process > > > [...] > > > /home/vagrant/ocamlbrew/ocaml-4.02.1/.opam/4.02.1+PIC/build/ctypes.0.4.0/src/ctypes/ctypes_primitives.h:99:3: > > error: #error "No suitable OCaml type available for representing long > longs" > > That's odd. Could you post the output of the following program? > > #include <stdio.h> > #include <limits.h> > #include <stdint.h> > #include <inttypes.h> > > int main(void) > { > printf("ULLONG_MAX: %llu\nUINT64_MAX: %" PRIu64"\n", > ULLONG_MAX, UINT64_MAX); > return 0; > } >
#define __DBL_MIN_EXP__ (-1021) #define _POSIX2_BC_SCALE_MAX 99 #define RE_DUP_MAX (0x7fff) #define __FLT_MIN__ 1.17549435e-38F #define __flexarr [] #define __stub_fchflags #define __CHAR_BIT__ 8 #define SHRT_MAX __SHRT_MAX__ #define PIPE_BUF 4096 #define MQ_PRIO_MAX 32768 #define __GLIBC_PREREQ(maj,min) ((__GLIBC__ << 16) + __GLIBC_MINOR__ >= ((maj) << 16) + (min)) #define _POSIX2_BC_DIM_MAX 2048 #define _POSIX_TTY_NAME_MAX 9 #define __WCHAR_MAX__ 2147483647 #define __stub___kernel_rem_pio2l #define __DBL_DENORM_MIN__ 4.9406564584124654e-324 #define __USE_BSD 1 #define _POSIX2_BC_STRING_MAX 1000 #define __FLT_EVAL_METHOD__ 0 #define SHRT_MIN (-SHRT_MAX - 1) #define __ASMNAME2(prefix,cname) __STRING (prefix) cname #define ARG_MAX 131072 #define SSIZE_MAX LONG_MAX #define _POSIX_DELAYTIMER_MAX 32 #define XATTR_SIZE_MAX 65536 #define __DBL_MIN_10_EXP__ (-307) #define __FINITE_MATH_ONLY__ 0 #define _POSIX_SYMLINK_MAX 255 #define PATH_MAX 4096 #define __LDBL_REDIR1(name,proto,alias) name proto #define _LIMITS_H___ #define __always_inline __inline __attribute__ ((__always_inline__)) #define __SHRT_MAX__ 32767 #define __LDBL_MAX__ 1.18973149535723176502e+4932L #define NAME_MAX 255 #define SCHAR_MAX __SCHAR_MAX__ #define __UINTMAX_TYPE__ long unsigned int #define __linux 1 #define __stub_sigreturn #define __unix 1 #define _POSIX_AIO_MAX 1 #define _POSIX_PIPE_BUF 512 #define __linux__ 1 #define SCHAR_MIN (-SCHAR_MAX - 1) #define _POSIX_AIO_LISTIO_MAX 2 #define __LDBL_REDIR_NTH(name,proto) name proto __THROW #define __SCHAR_MAX__ 127 #define __USING_NAMESPACE_STD(name) #define __KERNEL_STRICT_NAMES #define __NTH(fct) __attribute__ ((__nothrow__)) fct #define _POSIX_THREAD_THREADS_MAX 64 #define _POSIX_MQ_OPEN_MAX 8 #define _POSIX_LINK_MAX 8 #define COLL_WEIGHTS_MAX 255 #define __attribute_format_strfmon__(a,b) __attribute__ ((__format__ (__strfmon__, a, b))) #define _POSIX_SOURCE 1 #define __stub___kernel_sinl #define __attribute_used__ __attribute__ ((__used__)) #define _POSIX_CHILD_MAX 25 #define __USER_LABEL_PREFIX__ #define __GLIBC__ 2 #define __END_DECLS #define __CONCAT(x,y) x ## y #define __STDC_HOSTED__ 1 #define __GNU_LIBRARY__ 6 #define __DBL_DIG__ 15 #define __FLT_EPSILON__ 1.19209290e-7F #define __LDBL_MIN__ 3.36210314311209350626e-4932L #define _POSIX_NAME_MAX 14 #define RTSIG_MAX 32 #define __unix__ 1 #define __STDC_IEC_559__ 1 #define __STDC_ISO_10646__ 200009L #define __DECIMAL_DIG__ 21 #define _POSIX2_RE_DUP_MAX 255 #define __USE_FORTIFY_LEVEL 0 #define __gnu_linux__ 1 #define MAX_INPUT 255 #define __attribute_warn_unused_result__ __attribute__ ((__warn_unused_result__)) #define _POSIX_LOGIN_NAME_MAX 9 #define DELAYTIMER_MAX 2147483647 #define __LDBL_HAS_QUIET_NAN__ 1 #define __THROW __attribute__ ((__nothrow__)) #define __GLIBC_HAVE_LONG_LONG 1 #define __GNUC__ 4 #define __MMX__ 1 #define __USE_SVID 1 #define __LDBL_REDIR1_NTH(name,proto,alias) name proto __THROW #define LONG_MAX __LONG_MAX__ #define _POSIX_THREAD_DESTRUCTOR_ITERATIONS 4 #define _POSIX_HOST_NAME_MAX 255 #define NGROUPS_MAX 65536 #define __ASMNAME(cname) __ASMNAME2 (__USER_LABEL_PREFIX__, cname) #define HOST_NAME_MAX 64 #define _POSIX_SEM_NSEMS_MAX 256 #define __DBL_MAX__ 1.7976931348623157e+308 #define _POSIX_SIGQUEUE_MAX 32 #define __DBL_HAS_INFINITY__ 1 #define _POSIX_NGROUPS_MAX 8 #define __USE_XOPEN2K 1 #define __END_NAMESPACE_C99 #define _POSIX_PATH_MAX 256 #define LONG_MIN (-LONG_MAX - 1L) #define __USE_POSIX199506 1 #define _FEATURES_H 1 #define __stub_getmsg #define __stub_setlogin #define __stub_fattach #define __stub___kernel_tanl #define __DBL_MAX_EXP__ 1024 #define __WORDSIZE_COMPAT32 1 #define __SSE2_MATH__ 1 #define __amd64 1 #define _POSIX_TZNAME_MAX 6 #define _POSIX_SSIZE_MAX 32767 #define _POSIX_RE_DUP_MAX 255 #define __bounded #define __BEGIN_NAMESPACE_STD #define __LONG_LONG_MAX__ 9223372036854775807LL #define __stub_bdflush #define _BITS_POSIX2_LIM_H 1 #define __ptrvalue #define __GXX_ABI_VERSION 1002 #define __FLT_MIN_EXP__ (-125) #define __x86_64 1 #define _POSIX_CLOCKRES_MIN 20000000 #define __DBL_MIN__ 2.2250738585072014e-308 #define __REDIRECT(name,proto,alias) name proto __asm__ (__ASMNAME (#alias)) #define __LP64__ 1 #define __DBL_HAS_QUIET_NAN__ 1 #define _POSIX_SYMLOOP_MAX 8 #define __nonnull(params) __attribute__ ((__nonnull__ params)) #define CHAR_MAX SCHAR_MAX #define ULONG_MAX (LONG_MAX * 2UL + 1UL) #define _POSIX_HIWAT _POSIX_PIPE_BUF #define __REGISTER_PREFIX__ #define LOGIN_NAME_MAX 256 #define CHAR_BIT __CHAR_BIT__ #define __attribute_pure__ __attribute__ ((__pure__)) #define __USE_POSIX2 1 #define __NO_INLINE__ 1 #define __warndecl(name,msg) extern void name (void) #define CHAR_MIN SCHAR_MIN #define MAX_CANON 255 #define __FLT_MANT_DIG__ 24 #define _POSIX_FD_SETSIZE _POSIX_OPEN_MAX #define __VERSION__ "4.1.2 20080704 (Red Hat 4.1.2-52)" #define AIO_PRIO_DELTA_MAX 20 #define _SYS_CDEFS_H 1 #define _BSD_SOURCE 1 #define LINE_MAX _POSIX2_LINE_MAX #define __STRING(x) #x #define __unbounded #define _POSIX2_EXPR_NEST_MAX 32 #define __GNUC_PREREQ(maj,min) ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min)) #define _POSIX_STREAM_MAX 8 #define __stub_gtty #define __stub_sstk #define __wur #define __STDC_IEC_559_COMPLEX__ 1 #define _POSIX_RTSIG_MAX 8 #define USHRT_MAX (SHRT_MAX * 2 + 1) #define unix 1 #define _POSIX_MAX_INPUT 255 #define __SIZE_TYPE__ long unsigned int #define XATTR_LIST_MAX 65536 #define _POSIX_QLIMIT 1 #define __ELF__ 1 #define __stub___kernel_cosl #define __stub_lutimes #define __FLT_RADIX__ 2 #define __LDBL_EPSILON__ 1.08420217248550443401e-19L #define __GNUC_RH_RELEASE__ 52 #define _POSIX_C_SOURCE 200112L #define PTHREAD_STACK_MIN 16384 #define __SSE_MATH__ 1 #define __long_double_t long double #define _POSIX_ARG_MAX 4096 #define __k8 1 #define __stub_feupdateenv #define __LDBL_REDIR(name,proto) name proto #define UCHAR_MAX (SCHAR_MAX * 2 + 1) #define __restrict_arr __restrict #define __USE_MISC 1 #define _GCC_LIMITS_H_ #define __LDBL_DIG__ 18 #define __x86_64__ 1 #define _POSIX2_COLL_WEIGHTS_MAX 2 #define __stub_revoke #define INT_MAX __INT_MAX__ #define PTHREAD_DESTRUCTOR_ITERATIONS _POSIX_THREAD_DESTRUCTOR_ITERATIONS #define _POSIX2_LINE_MAX 2048 #define __FLT_HAS_QUIET_NAN__ 1 #define __FLT_MAX_10_EXP__ 38 #define __LONG_MAX__ 9223372036854775807L #define __FLT_HAS_INFINITY__ 1 #define __bos0(ptr) __builtin_object_size (ptr, 0) #define _POSIX2_CHARCLASS_NAME_MAX 14 #define __USING_NAMESPACE_C99(name) #define EXPR_NEST_MAX _POSIX2_EXPR_NEST_MAX #define INT_MIN (-INT_MAX - 1) #define __stub_lchmod #define __PMT(args) args #define _LINUX_LIMITS_H #define linux 1 #define __WORDSIZE 64 #define __BEGIN_DECLS #define __LDBL_MANT_DIG__ 64 #define __USE_ANSI 1 #define __k8__ 1 #define __WCHAR_TYPE__ int #define __stub_fdetach #define __stub_chflags #define TTY_NAME_MAX 32 #define __USE_POSIX 1 #define __FLT_DIG__ 6 #define __LDBL_REDIR_DECL(name) #define __INT_MAX__ 2147483647 #define __bos(ptr) __builtin_object_size (ptr, __USE_FORTIFY_LEVEL > 1) #define UINT_MAX (INT_MAX * 2U + 1U) #define __FLT_MAX_EXP__ 128 #define __ptr_t void * #define __DBL_MANT_DIG__ 53 #define _POSIX_SEM_VALUE_MAX 32767 #define __GLIBC_MINOR__ 5 #define __WINT_TYPE__ unsigned int #define __SSE__ 1 #define __LDBL_MIN_EXP__ (-16381) #define BC_DIM_MAX _POSIX2_BC_DIM_MAX #define _POSIX_MAX_CANON 255 #define __amd64__ 1 #define __USE_POSIX199309 1 #define __LDBL_MAX_EXP__ 16384 #define __LDBL_MAX_10_EXP__ 4932 #define __DBL_EPSILON__ 2.2204460492503131e-16 #define BC_SCALE_MAX _POSIX2_BC_SCALE_MAX #define XATTR_NAME_MAX 255 #define _SVID_SOURCE 1 #define _LP64 1 #define __stub_stty #define __GNUC_PATCHLEVEL__ 2 #define __REDIRECT_NTH(name,proto,alias) name proto __asm__ (__ASMNAME (#alias)) __THROW #define __END_NAMESPACE_STD #define CHARCLASS_NAME_MAX 2048 #define __LDBL_HAS_INFINITY__ 1 #define _POSIX_UIO_MAXIOV 16 #define _POSIX2_BC_BASE_MAX 99 #define _POSIX_MQ_PRIO_MAX 32 #define _LIBC_LIMITS_H_ 1 #define __INTMAX_MAX__ 9223372036854775807L #define __FLT_DENORM_MIN__ 1.40129846e-45F #define __BEGIN_NAMESPACE_C99 #define CHILD_MAX 999 #define __FLT_MAX__ 3.40282347e+38F #define __attribute_format_arg__(x) __attribute__ ((__format_arg__ (x))) #define __SSE2__ 1 #define __FLT_MIN_10_EXP__ (-37) #define __INTMAX_TYPE__ long int #define _BITS_POSIX1_LIM_H 1 #define _POSIX_TIMER_MAX 32 #define __GNUC_MINOR__ 1 #define __DBL_MAX_10_EXP__ 308 #define __LDBL_DENORM_MIN__ 3.64519953188247460253e-4951L #define __STDC__ 1 #define __attribute_malloc__ __attribute__ ((__malloc__)) #define __PTRDIFF_TYPE__ long int #define __attribute_noinline__ __attribute__ ((__noinline__)) #define BC_STRING_MAX _POSIX2_BC_STRING_MAX #define PTHREAD_KEYS_MAX 1024 #define __LDBL_MIN_10_EXP__ (-4931) #define __attribute_deprecated__ __attribute__ ((__deprecated__)) #define _POSIX_OPEN_MAX 20 #define _POSIX_THREAD_KEYS_MAX 128 #define __GNUC_GNU_INLINE__ 1 #define BC_BASE_MAX _POSIX2_BC_BASE_MAX #define MB_LEN_MAX 16 #define __stub_putmsg #define __P(args) args
_______________________________________________ Ctypes mailing list [email protected] http://lists.ocaml.org/listinfo/ctypes
