[pycrypto] compile on AIX fails

Brent S. Elmer Ph.D. webe3vt at aim.com
Fri May 2 12:42:04 PDT 2014


I am trying to compile version 2.6.1 on AIX 6.1.  I am getting the
following errors:

$ xlc_r -q64 -ma -qmaxmem=-1  -O3 -fomit-frame-pointer -Isrc/
-I/profit/freeware/python/aix/python2.7.6/include/python2.7 -c src/MD
2.c -o build/temp.aix-6.1-2.7/src/MD2.o
"/usr/include/stdio.h", line 528.12: 1506-343 (S) Redeclaration of
fgetpos64 differs from previous declaration on line 323 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 528.12: 1506-377 (I) The type "long long*"
of parameter 2 differs from the previous type "long* restrict".
"/usr/include/stdio.h", line 531.12: 1506-343 (S) Redeclaration of
fseeko64 differs from previous declaration on line 471 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 531.12: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/stdio.h", line 532.12: 1506-343 (S) Redeclaration of
fsetpos64 differs from previous declaration on line 325 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 532.12: 1506-377 (I) The type "const long
long*" of parameter 2 differs from the previous type "const long*".
"/usr/include/stdio.h", line 533.16: 1506-343 (S) Redeclaration of
ftello64 differs from previous declaration on line 472 of
"/usr/include/stdio.h".
"/usr/include/stdio.h", line 533.16: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 171.17: 1506-343 (S) Redeclaration of
lseek64 differs from previous declaration on line 169 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 171.17: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 171.17: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/sys/lockf.h", line 64.20: 1506-343 (S) Redeclaration of
lockf64 differs from previous declaration on line 62 of
"/usr/include/sys/lockf.h".
"/usr/include/sys/lockf.h", line 64.20: 1506-377 (I) The type "long
long" of parameter 3 differs from the previous type "long".
"/usr/include/unistd.h", line 809.33: 1506-343 (S) Redeclaration of
ftruncate64 differs from previous declaration on line 807 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 809.33: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 845.33: 1506-343 (S) Redeclaration of
truncate64 differs from previous declaration on line 843 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 845.33: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 862.33: 1506-343 (S) Redeclaration of
pread64 differs from previous declaration on line 859 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 862.33: 1506-377 (I) The type "long long"
of parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 863.33: 1506-343 (S) Redeclaration of
pwrite64 differs from previous declaration on line 860 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 863.33: 1506-377 (I) The type "long long"
of parameter 4 differs from the previous type "long".
"/usr/include/unistd.h", line 942.25: 1506-343 (S) Redeclaration of
fclear64 differs from previous declaration on line 939 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 942.25: 1506-050 (I) Return type "long
long" in redeclaration is not compatible with the previous return type
"long".
"/usr/include/unistd.h", line 942.25: 1506-377 (I) The type "long long"
of parameter 2 differs from the previous type "long".
"/usr/include/unistd.h", line 943.25: 1506-343 (S) Redeclaration of
fsync_range64 differs from previous declaration on line 940 of
"/usr/include/unistd.h".
"/usr/include/unistd.h", line 943.25: 1506-377 (I) The type "long long"
of parameter 3 differs from the previous type "long".

/usr/include/stdio.h has the following at the lines that it says are
redeclared.

extern int	fgetpos(FILE *__restrict__, fpos_t *__restrict__);
extern int 	fseek(FILE *, long int, int);
extern int	fsetpos(FILE *, const fpos_t *);
extern long	ftell(FILE *);
...


#ifdef _LARGE_FILE_API
extern int fgetpos64(FILE *, fpos64_t *);
extern FILE *fopen64(const char *, const char *);
extern FILE *freopen64(const char *, const char *, FILE *);
extern int fseeko64(FILE *, off64_t, int);
extern int fsetpos64(FILE *, const fpos64_t *);
extern off64_t ftello64(FILE *);
#endif /* _LARGE_FILE_API */

Anyone have any ideas what the problem is?




More information about the pycrypto mailing list