From: Michael Widenius Date: March 17 1999 2:10am Subject: glibc2 bug ??? List-Archive: http://lists.mysql.com/mysql/378 Message-Id: <14063.3492.198683.86762@monty.pp.sci.fi> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit >>>>> "Phil" == Phil Wilshire writes: Phil> Hi, Phil> I have tried to compile under a new RedHet release. Phil> I have got a compile error and the following note from Redhat... Phil> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Phil> Phil Wilshire wrote: >> >> hi, >> I get the following compile fail with Mysql on 5.8.6 >> >> (cd .libs && ln -s ../libmysqlclient.la libmysqlclient.la) >> c++ -DUNDEF_THREADS_HACK -I./../include -I../include -I./.. -I.. -I.. >> -O -fno-implicit-templates -DDBUG_OFF -D_FILE_OFFSET_BITS=64 -c >> mysql.cc >> In file included from /usr/include/termios.h:40, >> from /usr/include/termcap.h:22, >> from mysql.cc:43: >> /usr/include/bits/termios.h:28: warning: `NCCS' redefined >> /usr/include/asm/termbits.h:10: warning: this is the location of the >> previous definition >> In file included from /usr/include/termios.h:40, >> from /usr/include/termcap.h:22, >> from mysql.cc:43: >> /usr/include/bits/termios.h:30: redefinition of `struct termios' >> /usr/include/asm/termbits.h:18: previous definition here >> make[2]: *** [mysql.o] Error 1 >> make[2]: Leaving directory `/opt/mysql/mysql-3.22.20a/client' >> make[1]: *** [all-recursive] Error 1 >> make[1]: Leaving directory `/opt/mysql/mysql-3.22.20a' >> make: *** [all-recursive-am] Error 2 >> >> this looks like some problem back in the system include directories. >> >> D'ya need a bugzilla on this one yet ?? >> Phil> Nope it's a mysql bug with glibc one should not include asm/ or linux/ Phil> thingies since glibc is trying to abstract all that kinda stuff into the Phil> libc. Phil> So just remove the include of asm/something in the file which fails to Phil> compile, afaik. Phil> Atleast that was it last time a friend of mine tried mysql with Phil> glibc2.1 Phil> ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Phil> is there any official statement on this from mysql's view point ??? Phil> removing the offending line in mysql.cc seemed to fix the problem. Hi! The problem is that most Linux version needs the inclusion of asm/termbits.h to work. It seams that glibc 2.1 doesn't allow this anymore (which is probably correct). To fix this, one has to add a new test to configure to check if one has to include asm/termbits.h anymore. I don't have access to a glibc 2.1 system to check this, so I am greatfull if anyone can fix configure to not define HAVE_ASM_TERMBITS when used with glibc 2.1. Regards, Monty