Bug #1954 MySQL 4.1 form bk doesn't compile on Tru64 UNIX 5.1
Submitted: 25 Nov 2003 15:46 Modified: 16 Dec 2003 2:58
Reporter: Magnus Määttä Email Updates:
Status: Closed Impact on me:
None 
Category:MySQL Server: Compiling Severity:S2 (Serious)
Version:4.1 OS:Other (Tru64 UNIX 5.1)
Assigned to: Michael Widenius CPU Architecture:Any

[25 Nov 2003 15:46] Magnus Määttä
Description:
cc -DDEFAULT_CHARSET_HOME=\"/usr/local/www/mysql4.1\" -DDATADIR=\"/usr/local/www/mysql4.1/var\" -DSHAREDIR=\"/usr/local/www/mysql4.1/share/mysql\" -DDONT_USE_RAID -I. -I. -I.. -I../include -O -DDBUG_OFF -DUNDEF_HAVE_GETHOSTBYNAME_R -D_REENTRANT -c -MD strtoll.c  -DPIC -o .libs/strtoll.lo
cc: Warning: strto.c, line 38: The redefinition of the macro "strtoll" conflicts with a current definition because one is object-like and the other is function-like.  The redefinition is now in effect. (macroredef)
#define strtoll glob_strtoll            /* Fix for True64 */
----------------^
cc: Error: strto.c, line 83: In this declaration, the type of "strtoll" is not compatible with the type of a previous declaration of "strtoll" at line number 44 in file /usr/include.dtk/stdlib.h. (notcompat)
function (const char *nptr,char **endptr,int base)

From /usr/include.dtk/stdlib.h:
   extern long long int strtoll(
                const char * /*restrict*/ __nptr,
                char ** /*restrict*/ __endptr,
                int __base);

Also, the C++ compiler test is fubar.. I have to send the compiler EOF with ^D to get it to continue the configure script. But that's maybe an autoconf bug.

How to repeat:
1. CC="cc" CXX="cpp" ./configure --prefix=/usr/local/www/mysql4.1 --enable-assembler --with-raid --enable-thread-safe-client

2. gmake
[16 Dec 2003 2:58] Michael Widenius
Thank you for your bug report. This issue has been committed to our
source repository of that product and will be incorporated into the
next release.

If necessary, you can access the source repository and build the latest
available version, including the bugfix, yourself. More information 
about accessing the source trees is available at
    http://www.mysql.com/doc/en/Installing_source_tree.html

Additional info:

As I don't have access to a true64 system I have some difficulties testing this.

I have however now done some changes to this file so there is a good chance this is fixed now.  The fix will appear in 4.0.18 and 4.1.2.

Please test this with our source repository after a few days...