| Bug #18653 | Problems compiling 5.0.19 on Slackware 10.2 gcc 3.4.6 | ||
|---|---|---|---|
| Submitted: | 30 Mar 2006 15:50 | Modified: | 4 Apr 2006 14:47 |
| Reporter: | Jeronimo Barros | Email Updates: | |
| Status: | Not a Bug | Impact on me: | |
| Category: | MySQL Server | Severity: | S1 (Critical) |
| Version: | 5.0.19 | OS: | Linux (Slackware 10.2 - Kernel 2.6.16.1) |
| Assigned to: | CPU Architecture: | Any | |
[31 Mar 2006 12:25]
Valeriy Kravchuk
Thank you for a problem report. I tried to compile 5.0.21-BK on Linux with 2.6 kernel and GCC 3.3.5, with you exact variabnles and configure command line. I've got errors, but different. Can you, please, try to not set any environment variables and use simpler configure, like: ./configure --prefix=... --with-extra-charsets=all --with-readline This one works OK for me on the same machine. Please, try, and inform about hte results.
[4 Apr 2006 12:51]
Jeronimo Barros
Hi Valeriy,
I've tried to compile 5.0.19 without environment variables and the problem continues:
./configure --with-extra-charsets=all --with-readline ; make
.
.
In file included from /usr/include/asm/cpufeature.h:10,
from /usr/include/asm/processor.h:16,
from /usr/include/asm/atomic.h:6,
from ../include/my_global.h:318,
from mysys_priv.h:17,
from my_new.cc:22:
/usr/include/linux/bitops.h: In function `int generic_fls64(__u64)':
/usr/include/linux/bitops.h:84: error: `fls' was not declared in this scope
/usr/include/linux/bitops.h:85: error: `fls' was not declared in this scope
/usr/include/linux/bitops.h: In function `int get_bitmask_order(unsigned int)':
/usr/include/linux/bitops.h:92: error: `fls' was not declared in this scope
/usr/include/linux/bitops.h: In function `int get_count_order(unsigned int)':
/usr/include/linux/bitops.h:100: error: `fls' was not declared in this scope
In file included from /usr/include/asm/atomic.h:6,
from ../include/my_global.h:318,
from mysys_priv.h:17,
from my_new.cc:22:
/usr/include/asm/processor.h: In function `void set_in_cr4(long unsigned int)':
/usr/include/asm/processor.h:239: error: `read_cr4' was not declared in this scope
/usr/include/asm/processor.h:241: error: `write_cr4' was not declared in this scope
/usr/include/asm/processor.h: In function `void clear_in_cr4(long unsigned int)':
/usr/include/asm/processor.h:248: error: `read_cr4' was not declared in this scope
/usr/include/asm/processor.h:250: error: `write_cr4' was not declared in this scope
make[2]: *** [my_new.o] Error 1
make[2]: Leaving directory `/usr/local/src/mysql-5.0.19/mysys'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/local/src/mysql-5.0.19'
make: *** [all] Error 2
But I realized that running kernel 2.6.16.1, with /usr/include/linux and /usr/include/asm directories linked to 2.4.32 instead 2.6.1.61.1 kernel directory, 5.0.19 compiles OK with or without environment variables setted.
Thanks again for the help.
[4 Apr 2006 14:47]
Valeriy Kravchuk
Sorry for not paying attention to the links. So, it is not a bug.

Description: Problems compiling 5.0.19 on Slackware Current (Changelog Sun Mar 26 20:42:28 CST 2006), AMD Athlon, kernel 2.6.16.1 and gcc 3.4.6. - After make: In file included from /usr/include/asm/cpufeature.h:10, from /usr/include/asm/processor.h:16, from /usr/include/asm/atomic.h:6, from ../include/my_global.h:318, from mysys_priv.h:17, from my_new.cc:22: /usr/include/linux/bitops.h: In function `int generic_fls64(__u64)': /usr/include/linux/bitops.h:84: error: `fls' was not declared in this scope /usr/include/linux/bitops.h:85: error: `fls' was not declared in this scope /usr/include/linux/bitops.h: In function `int get_bitmask_order(unsigned int)': /usr/include/linux/bitops.h:92: error: `fls' was not declared in this scope /usr/include/linux/bitops.h: In function `int get_count_order(unsigned int)': /usr/include/linux/bitops.h:100: error: `fls' was not declared in this scope In file included from /usr/include/asm/atomic.h:6, from ../include/my_global.h:318, from mysys_priv.h:17, from my_new.cc:22: /usr/include/asm/processor.h: In function `void set_in_cr4(long unsigned int)': /usr/include/asm/processor.h:239: error: `read_cr4' was not declared in this scope /usr/include/asm/processor.h:241: error: `write_cr4' was not declared in this scope /usr/include/asm/processor.h: In function `void clear_in_cr4(long unsigned int)': /usr/include/asm/processor.h:248: error: `read_cr4' was not declared in this scope /usr/include/asm/processor.h:250: error: `write_cr4' was not declared in this scope make[2]: *** [my_new.o] Error 1 make[2]: Leaving directory `/usr/local/src/mysql-5.0.19/mysys' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/usr/local/src/mysql-5.0.19' /usr/include/asm is a link to /usr/src/linux-2.6.16.1/include/asm-i386 /usr/include/linux is a link to /usr/src/linux-2.6.16.1/include/linux How to repeat: uname -a Linux test 2.6.16.1 #1 PREEMPT Wed Mar 29 17:54:43 BRT 2006 i686 athlon-4 i386 GNU/Linux tar xvfz mysql-5.0.19.tar.gz cd mysql-5.0.19 groupadd -g 51 mysql useradd -c MySQL -d /usr/local/mysql -g mysql -u 51 mysql bash CFLAGS="-Wimplicit -Wreturn-type -Wid-clash-51 -Wswitch -Wtrigraphs \ -Wcomment -W -Wchar-subscripts -Wformat -Wimplicit-function-dec \ -Wimplicit-int -Wparentheses -Wsign-compare -Wwrite-strings -Wunused \ -O6 -march=i686 -fomit-frame-pointer -mstack-align-double" CXX=gcc CXXFLAGS="-Wimplicit -Wreturn-type -Wid-clash-51 -Wswitch -Wtrigraphs -Wcomment -W -Wchar-subscripts -Wformat -Wimplicit-function-dec \ -Wimplicit-int -Wparentheses -Wsign-compare -Wwrite-strings \ -Woverloaded-virtual -Wextern-inline -Wsign-promo -Wreorder \ -Wctor-dtor-privacy -Wnon-virtual-dtor -felide-constructors \ -fno-exceptions -fno-rtti -O6 -fomit-frame-pointer -march=i686 \ -mstack-align-double" ./configure --prefix=/usr/local/mysql --enable-assembler \ --with-extra-charsets=complex --enable-thread-safe-client \ --with-mysqld-user=mysql --with-innodb --with-berkeley-db \ --with-embedded-server --enable-thread-safe-client \ --with-openssl --with-vio --with-big-tables --with-raid \ --with-ndbcluster make Suggested fix: The same configuration compile OK in Kernel 2.4.32 with gcc 3.4.6, but I need to use kernel 2.6. Any tip ? Any help ? Thanks in advance.