MySQL のソースビルド

最近 Understanding MySQL Internals が評判が良いので読んでいる。そこにMySQLのソースレポジトリへのアクセス方法が書かれている。
とりあえず、レポジトリをローカルに作ってテストしてみたのでそのときのメモ。

  • 環境設定

Understanding MySQL Internals によると、以下の手順でローカルにワーキングコピーを作れるとのこと。

# bitkeeper のフリークライアントのインストール
# wget http://www.bitmover.com/bk-client2.0.shar
# /bin/sh bk-client2.0.shar
# cd bk-client2.0
# make

# MySQL5.1のソースブランチ をチェックアウト
# ./bkf clone bk://mysql.bkbits.net/mysql-5.1 mysql-5.1

試してみたが、うまくいかない。

MySQL :: MySQL 5.1 リファレンスマニュアル :: 2.9.3 開発ソース ツリーからのインストール を見ると、間違いなさそう。

もしやと思い、英語の方のページ MySQL :: を見ると、情報が更新されている。
それによると、MySQLは、Launchpad を使っているらしい。そういえば Ubuntu も使っていたな。
話を戻すと Bitkeeperをやめて Bazaar というSCMを使い始めた模様。それともBitkeeperへのアクセスが集中したので外部への公開は Bazaarにしたのだろうか。

とりあえずBazaarをインストール(CentOS5の場合)

# rpm -Uvh http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-2.noarch.rpm
# yum install bzr
# mkdir mysql-server
# bzr init-repo --trees mysql-server
# cd mysql-server
# bzr branch lp:mysql-server/5.1 mysql-5.1

ローカルコピーをダウンロードした後は、自分用のブランチを切っておく。

# bzr branch mysql-5.1 mysql-5.1-build
  • ビルド方法
# cd mysql-5.1
# autoreconf --force --install
# CFLAGS=-g ./configure --with-debug
# make
  • インストール
# make install
  • ソースのアップデート
# bzr pull