| 2.3 Installation de MySQL avec une distribution source
 2 Installer MySQL
 Manuel de Référence MySQL 4.1 : Version Française
 
 . Installation depuis les sources : présentation
 . Options habituelles de configure
 ->Installer à partir de l'arbre source de développement
 . Problèmes de compilation?
 . Notes relatives aux MIT-pthreads
 . La distribution source Windows
 . Compiler les clients MySQL sous Windows
 
 
 | 
  2.3.3 Installer à partir de l'arbre source de développement    
 
Attention
  : Vous devez lire cette partie seulement si vous voulez nous aider 
à tester notre nouveau code. Si vous souhaitez seulement faire fonctionner MySQL sur 
votre système, vous devriez utiliser la distribution d'une version standard (que ce 
soit une distribution sous forme de sources ou de binaire).
Pour obtenir notre arbre source de développement le plus réent, suivez les instructions suivantes : 
Téléchargez  
BitKeeper
  à partir de 
 http://www.bitmover.com/cgi-bin/download.cgi .  Vous aurez besoin de 
 
Bitkeeper
  2.0 ou supérieur pour accéder à notre dépôt.Suivez les instructions pour l'installer.Après avoir installé  
BitKeeper
 , commencez par vous déplacer dans 
le répertoire à partir duquel vous voulez travailler, et lancez l'une des 
commandes suivantes pour dupliquer la branche MySQL de votre choix :Pour dupliquer la branche 3.23, utilisez cette commande : 
Pour dupliquer la branche 4.0, utilisez cette commande :| 
shell> bk clone bk://work.mysql.com:7000 mysql-3.23
 | 
 Pour dupliquer la branche 4.1, utilisez cette commande :| 
shell> bk clone bk://work.mysql.com:7001 mysql-4.0
 | 
 Pour dupliquer la branche 5.0, utilisez cette commande :| 
shell> bk clone bk://work.mysql.com:7004 mysql-4.1
 | 
 Dans l'exemple précédent, les sources seront respectivement placées dans les dossiers
 
mysql-3.23/
 ,  
mysql-4.0/
 ,  
mysql-4.1/
  ou  
mysql-5.0/
 ,
de votre dossier courant.| 
shell> bk clone bk://mysql.bkbits.net/mysql-5.0 mysql-5.0
 | 
 
Si vous êtes derrière un firewall et que vous ne pouvez utiliser que des 
connexions HTTP, vous pouvez aussi accéder à  
BitKeeper
  via HTTP.
Si vous devez utiliser un serveur proxy, assignez la variable d'environnement
 
http_proxy
  pour qu'elle pointe sur votre proxy : Puis, remplacez le protocole  
bk://
  par  
http://
  lors de votre
export. Par exemple :| 
shell> export http_proxy="http://your.proxy.server:8080/"
 | 
 Le premier téléchargement de l'arbre source peut prendre un certain temps, 
selon la vitesse de votre connexion. Soyez patients.| 
shell> bk clone http://mysql.bkbits.net/mysql-4.1 mysql-4.1
 | 
Vous aurez besoin de GNU  
make
 ,  
autoconf
  2.53 (ou plus récent),
 
automake
  1.5,  
libtool
  1.4 et  
m4
  pour lancer 
la prochaine série de commandes. Même si la plupart des systèmes
d'exploitation sont livrés avec leur propre implémentation de
 
make
 , les chances sont fortes pour que la compilation échoue
avec des messages d'erreur étranges. Par conséquent, il est fortement
recommandé d'utiliser GNU  
make
  (parfois aussi appelé  
gmake
 ).Heureusement, d'autres systèmes d'exploitation sont livrés avec 
les utilitaires GNU, ou propose des paquets facilement installables.
Dans tous les cas, vous pouvez les télécharger sur ces sites : 
 Si vous essayez ded configurer MySQL 4.1 ou plus récent, vous aurez besoin de 
GNU  
bison
  1.75 ou plus récent. Les anciennes versions de  
bison
  
peuvent indiquer cette erreur :  
Note : la taille maximale de la table n'est pas dépassée.
L'erreur est causée par un bug dans les versions plus anciennes
de  
bison
 .Les versions de MySQL avant la version 4.1 peuvent aussi se compiler avec
d'autres versions de  
yacc
  (par exemple, BSD  
yacc
  91.7.30). 
Pour les versions plus récentes, GNU  
bison
  est une obligation.| 
sql_yacc.yy:@: fatal error: maximum table size (32767) exceeded
 | 
 
Les commandes typiques nécessaires pour compiler MySQL sont présentées
ci-dessous. La première commande  
cd
  change le dossier de travail : 
remplacez  
mysql-4.0
  avec le bon nom de dossier.
 Les lignes de commande qui passent dans les dossiers  
innobase
  et
 
bdb/dist
  sont utilisées pour configurer  
InnoDB
  et
Berkeley DB ( 
BDB
 ). Vous pouvez omettre ces lignes si vous n'avez pas
besoin du support  
InnoDB
  ou  
BDB
 .| 
shell> cd mysql-4.0shell> bk -r get -Sq
 shell> aclocal; autoheader; autoconf;  automake;
 shell> ./configure  # Ajoutez ici vos options favorites
 shell> make
 | 
 
Si vous obtenez des erreurs étranges pendant cette étape, vérifiez bien 
que vous avez vraiment installé  
libtool
 !
Une collection de nos scripts de configuration les plus courants de trouve dans le 
sous-répertoire  
BUILD/
 . Si vous êtes fainéants, vous pouvez 
utiliser  
BUILD/compile-pentium-debug
 . Pour compiler sur une architecture 
différente, modifiez ce script en enlevant les drapeaux spécifiques au 
Pentium.Quand la compilation est achevée, lancez  
make install
 . Prenez garde sur des 
machines de production. Cette commande pourrait écraser votre installation actuelle. 
Si vous avez une autre installation de MySQL, nous vous recommandons de lancer 
 
./configure
  avec des valeurs des options  
prefix
 ,  
with-tcp-port
 , et 
 
unix-socket-path
  différentes de celles de votre serveur de production.Torturez votre nouvelle installation et tentez de faire planter les nouvelles 
fonctionnalités. Commencez par lancer  
make test
 .   Suites de tests MySQL .Si vous avez échoué avec l'étape  
make
  et que la distribution ne 
compile pas, envoyez un rapport sur le site  http://bugs.mysql.com/ . Si 
vous avez installé la dernière version des indispensables outils GNU, et 
qu'ils échouent dans l'analyse de vos fichiers de configuration, envoyez aussi un 
rapport. D'autre part, si vous exécutez  
aclocal
  et que vous obtenez l'erreur 
 
command not found
  ou un problème du même type, n'envoyez pas de rapport. 
A la place, assurez vous que les outils nécessaires sont bien installés et que 
votre variable  
PATH
  est configurée de telle façon que votre 
interpréteur de commandes les trouvent.Après la première opération  
bk clone
  pour obtenir l'arbre 
source, vous devez lancer régulièrement  
bk pull
  pour obtenir les mises 
à jour.Vous pouvez examiner l'historique des changements de l'arbre avec toutes les 
différences en utilisant  
bk sccstool
 . Si vous apercevez des différences 
anormales ou sur lesquelles vous avez des questions, n'hésitez pas à envoyer 
un e-mail aux listes internes.  Les listes de diffusion MySQL . 
De même, si vous pensez avoir 
une meilleure méthode pour traiter un problème, envoyez un e-mail 
accompagné d'un patch à la même adresse.
 
bk diffs
  vous fournira un patch après que vous ayez fait vos changements aux 
sources. Si vous n'avez pas le temps de coder votre idée, envoyez en juste une 
description.BitKeeper
  dispose d'une aide agréable à laquelle vous pouvez 
accéder via  
bk helptool
 .Veuillez noter que chaque commit ( 
bk ci
  ou  
bk citool
 ) postera un message avec 
un aperçu des changements à notre liste de diffusion interne, à la 
façon habituelle des propositions openlogging.org avec seulement les commentaires des 
changements. Généralement, vous n'aurez pas besoin d'utiliser commit (l'arbre 
public interdisant les  
bk push
 ), mais plutôt d'utiliser la méthode  
 
bk diffs
  décrite plus haut. 
Vous pouvez aussi naviguer dans les fichiers d'historiques, les commentaires
et le code source en ligne. Par exemple, pour lire ses informations pour 
MySQL 4.1, allez à  http://mysql.bkbits.net:8080/mysql-4.1 .
Le manuel est dans un module séparé, qui peut être obtenu comme ceci  : Il y a aussi des arbres BitKeeper pour  
MySQL Control Center
  et
 
Connector/ODBC
 . Ils sont disponibles comme ceci :Pour obtenir le  
MySQL Control Center
 , utilisez cette commande :| 
shell> bk clone bk://mysql.bkbits.net/mysqldoc mysqldoc
 | 
 Pour obtenir le  
Connector/ODBC
 , utilisez cette commande :| 
shell> bk clone http://mysql.bkbits.net/mysqlcc mysqlcc
 | 
 | 
shell> bk clone http://mysql.bkbits.net/myodbc3 myodbc3
 | 
 |