Bug #19040 yaSSL does not compile on AIX
Submitted: 12 Apr 2006 10:18 Modified: 18 May 2006 1:05
Reporter: Joerg Bruehe Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S3 (Non-critical)
Version:5.0.20 OS:IBM AIX (AIX 5)
Assigned to: Joerg Bruehe CPU Architecture:Any

[12 Apr 2006 10:18] Joerg Bruehe
Description:
The release build of 5.0.20 contains yaSSL on all platforms but AIX,
because on AIX we have this build error:

=====
source='algebra.cpp' object='libtaocrypt_la-algebra.lo' libtool=yes \
depfile='.deps/libtaocrypt_la-algebra.Plo' tmpdepfile='.deps/libtaocrypt_la-algebra.TPlo' \
depmode=aix /bin/sh ../../../../depcomp \
/bin/sh ../../../../libtool --preserve-dup-deps --mode=compile xlC_r -DHAVE_CONFIG_H -I. -I. -I../../../.. -I../include -I.
./../mySTL   -DYASSL_PURE_C -DDBUG_OFF -ma -O2 -qstrict -qoptimize=2 -qmaxmem=8192   -c -o libtaocrypt_la-algebra.lo `test
-f 'algebra.cpp' || echo './'`algebra.cpp
 xlC_r -DHAVE_CONFIG_H -I. -I. -I../../../.. -I../include -I../../mySTL -DYASSL_PURE_C -DDBUG_OFF -ma -O2 -qstrict -qoptimi
ze=2 -qmaxmem=8192 -c -M algebra.cpp -o libtaocrypt_la-algebra.o
"/usr/include/stdio.h", line 487.12: 1540-1172 (S) More than one function "fgetpos64" has non-C++ linkage.
"/usr/include/stdio.h", line 296.17: 1540-0424 (I) "fgetpos64" is declared on line 296 of "/usr/include/stdio.h".
"/usr/include/stdio.h", line 490.12: 1540-1172 (S) More than one function "fseeko64" has non-C++ linkage.
"/usr/include/stdio.h", line 427.17: 1540-0424 (I) "fseeko64" is declared on line 427 of "/usr/include/stdio.h".
"/usr/include/stdio.h", line 491.12: 1540-1172 (S) More than one function "fsetpos64" has non-C++ linkage.
"/usr/include/stdio.h", line 298.17: 1540-0424 (I) "fsetpos64" is declared on line 298 of "/usr/include/stdio.h".
"/usr/include/stdio.h", line 492.16: 1540-0400 (S) "ftello64(FILE *)" has a conflicting declaration.
"/usr/include/stdio.h", line 428.17: 1540-0424 (I) "ftello64" is declared on line 428 of "/usr/include/stdio.h".
gmake[4]: *** [libtaocrypt_la-algebra.lo] Error 1
gmake[4]: Leaving directory `/home/mysqldev/aix52/mysql-5.0.20/extra/yassl/taocrypt/src'
=====

How to repeat:
Try a build with yaSSL on AIX.
[12 Apr 2006 10:29] Magnus BlÄudd
Try to define not only _LARGE_FILES but also __LARGE_FILE_API

/usr/include/stdio.h>>
#ifdef _LARGE_FILES
#define fseeko fseeko64
#define ftello ftello64
#define fgetpos fgetpos64
#define fsetpos fsetpos64
#define fopen fopen64
#define freopen freopen64
#endif /* _LARGE_FILES */
<<
[17 May 2006 18:51] Joerg Bruehe
Fixed in 5.0.22 and 5.1.11 (to be merged).
[18 May 2006 1:05] Paul DuBois
No changelog entry needed.