MySQL requière la version 5.4.12 de libc
ou plus récent. Il est connu pour fonctionner avec
libc
5.4.46. La version 2.0.6 de
glibc
ou plus récente devrait aussi
fonctionner. Il y a eu quelques problèmes avec les
RPM
de glibc
de Red Hat,
et donc, si vous avez des problèmes, vérifiez s'il existe
des mises à jour ! Les RPM
de
glibc
2.0.7-19 et 2.0.7-29 sont connus pour
fonctionner.
Si vous utilisez gcc
3.0 ou plus récent
pour compiler MySQL, vous devez installer la bibliothèque
libstdc++v3
avant de compiler MySQL; si
vous ne le faites pas vous obtiendrez une erreur à propos
d'un symbole __cxa_pure_virtual
manquant
durant la liaison! Pour corriger ce problème, lancez
mysqld
avec l'option
--thread-stack=192K
. Utilisez la syntaxe
-O thread_stack=192K
avant MySQL 4.) La
taille de la pile est maintenant par défaut pour les versions
MySQL 4.0.10 et plus récente, alors vous ne devriez pas
rencontrer de problème.
Si vous utilisez gcc
3.0 et plus récent
pour compiler MySQL, vous devez installer la bibliothèque
libstdc++v3
avant de compiler MySQL; si
vous ne le faites pas, vous aurez des erreurs à propos de
__cxa_pure_virtual
qui manque, durant la
résolution des symboles.
Sur quelques vieilles distributions de Linux,
configure
peut produire une erreur comme
celle qui suit :
Syntax error in sched.h. Change _P to __P in the /usr/include/sched.h file. See the Installation chapter in the Reference Manual.
Faites ce que le message d'erreur dit et ajoutez un
_
à la macro _P
qui
n'en a qu'un, puis essayez à nouveau.
Vous pouvez obtenir quelques avertissements en compilant; celles qui suivent peuvent être ignorées :
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'
Si mysqld
provoque toujours un plantage au
démarrage, le problème peut être que vous avez un vieux
/lib/libc.a
. Renommez le, puis supprimez
sql/mysqld
et faites à nouveau un
make install
puis réessayez. Ce problème
a été reporté sur quelques installations de Slackware.
Si vous obtenez l'erreur suivante en liant
mysqld
, cela signifie que votre
libg++.a
n'est pas installé
correctement :
/usr/lib/libc.a(putc.o): In function `_IO_putc': putc.o(.text+0x0): multiple definition of `_IO_putc'
Vous pouvez éviter d'utiliser libg++.a
en exécutant configure
comme suit :
shell> CXX=gcc ./configure
Si mysqld
se plante immédiatement, et que
vous utilisez Red Hat Version 5.0, avec une version de
glibc
plus ancienne que 2.0.7-5, il est
recommandé d'installer les patchs glibc
.
Il y a beaucoup d'informations à ce sujet dans les archives
courriel, disponibles sur
http://lists.mysql.com/.
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.