Linux x86 Notes
...............
MySQL requires `libc' Version 5.4.12 or newer. It's known to work with
`libc' 5.4.46. `glibc' Version 2.0.6 and later should also work. There
have been some problems with the `glibc' RPMs from RedHat, so if you
have problems, check whether or not there are any updates! The `glibc'
2.0.7-19 and 2.0.7-29 RPMs are known to work.
On some older Linux distributions, `configure' may produce an error
like this:
Syntax error in sched.h. Change _P to __P in the /usr/include/sched.h file.
See the Installation chapter in the Reference Manual.
Just do what the error message says and add an extra underscore to the
`_P' macro that has only one underscore, then try again.
You may get some warnings when compiling; those shown below can be
ignored:
mysqld.cc -o objs-thread/mysqld.o
mysqld.cc: In function `void init_signals()':
mysqld.cc:315: warning: assignment of negative value `-1' to `long unsigned int'
mysqld.cc: In function `void * signal_hand(void *)':
mysqld.cc:346: warning: assignment of negative value `-1' to `long unsigned int'
In Debian GNU/Linux, if you want MySQL to start automatically when the
system boots, do the following:
shell> cp support-files/mysql.server /etc/init.d/mysql.server
shell> /usr/sbin/update-rc.d mysql.server defaults 99
`mysql.server' can be found in the `share/mysql' directory under the
MySQL installation directory or in the `support-files' directory of the
MySQL source tree.
If `mysqld' always core dumps when it starts up, the problem may be that
you have an old `/lib/libc.a'. Try renaming it, then remove
`sql/mysqld' and do a new `make install' and try again. This problem
has been reported on some Slackware installations.
If you get the following error when linking `mysqld', it means that
your `libg++.a' is not installed correctly:
/usr/lib/libc.a(putc.o): In function `_IO_putc':
putc.o(.text+0x0): multiple definition of `_IO_putc'
You can avoid using `libg++.a' by running `configure' like this:
shell> CXX=gcc ./configure