MySQL 5.1 リファレンスマニュアル :: 2 MySQL のインストールと更新 :: 2.9 ソースのディストリビューションを使用した MySQL のインストール :: 2.9.3 開発ソース ツリーからのインストール
« 2.9.2 典型的な configure オプション

2.9.4 MySQL のコンパイルに関する問題 »
Section Navigation      [Toggle]
  • 2.9 ソースのディストリビューションを使用した MySQL のインストール
  • 2.9.1 ソースのインストール概要
  • 2.9.2 典型的な configure オプション
  • 2.9.3 開発ソース ツリーからのインストール
  • 2.9.4 MySQL のコンパイルに関する問題
  • 2.9.5 MIT-pthreads ノート
  • 2.9.6 Windows にソースから MySQL をインストールする
  • 2.9.7 Windows で MySQL クライアントをコンパイルする

2.9.3. 開発ソース ツリーからのインストール

注意 :このセクションは、当社の新しいコードのテストに協力していただける場合にのみお読みください。単に MySQL を立ち上げてお客様のシステムを運用する場合には、標準のディストリビューション (バイナリあるいはソースのディストリビューション) を使用されるようお願いします。

最新の開発ソース ツリーを取得するには、BitKeeper が手元にない場合は最初にダウンロードし、BitKeeper のフリークライアントをインストールします。クライアントは http://www.bitmover.com/bk-client2.0.shar から入手できます。BitKeeper フリークライアントをビルドするには gcc と make、および BitKeeper フリークライアントを使用するには patch と tar が必要です。BitKeeper フリークライアントの旧 1.1 バージョンは動作しませんのでご留意ください !

Unix に BitKeeper クライアントをインストールするには、以下のコマンドを使用します。

shell> /bin/sh bk-client2.0.shar
shell> cd bk-client2.0
shell> make

cc を取得すると:command not found エラーが表示されたら、make を実行する前に以下のコマンドを実行します。

shell> make CC=gcc

上記のステップでユーティリティ bkf が作成されます。それが BitKeeper フリークライアントです。BitKeeper フリークライアントをメインのクライアントと同じように使用できます。bkf に関する詳細は、以下を使用します。

shell> bkf --help

BitKeeper クライアントを Windows にインストールするには、以下の説明書を使用します。

  1. Cygwin を http://cygwin.com からダウンロードしてインストールします。

  2. patch、tar、gcc および make が Cygwin でインストールされていることを確認します。.各コマンドに which gcc を発行してこれをテストします。必要なツールがインストールされていない場合、Cygwin のパッケージ マネージャを実行して、必要なツールを選択してインストールします。

  3. BitKeeper フリークライアントのインストールには、上記の Unix と同じようなインストールを行います。

BitKeeper フリークライアントの出荷にはソースコードが同梱されています。そのフリークライアントで利用できる説明資料はそのソースコードのみです。

BitKeeper クライアントをインストールすると、MySQL 開発ソースのツリーにアクセスできます。

  1. 使用するディレクトリにロケーションを変更し、以下のコマンドを使用して MySQL 5.1 バージョンのローカルのコピーを取ります。

    shell> bkf clone bk://mysql.bkbits.net/mysql-5.1 mysql-5.1
    

    上記の例で、ソースツリーが現在のディレクトリの mysql-5.1/ のサブディレクトリに設定されます。

    ソースツリーの最初のダウンロードは、接続の速度によって多少時間がかかります。気長にお待ちください。

  2. 次のステップのコマンドを実行するには GNU make、autoconf 2.58 (あるいはそれ以降)、automake 1.8、libtool 1.5、およびm4 が必要です。オペレーティング システムの多くはそれぞれの make の実装を備えているとはいえ、予想外のエラーメッセージでコンパイルに失敗する確率は高いといえます。ですから、GNU make (gmake の名前の時もある) を使用することを強くお勧めします。

    幸運にも、多くのオペレーティング システムは GNU toolchain を実装しているか、あるいはこれらをインストールできるパッケージを提供しています。ほとんどの場合、それらは以下のロケーションからダウンロードすることもできます。

    • http://www.gnu.org/software/autoconf/

    • http://www.gnu.org/software/automake/

    • http://www.gnu.org/software/libtool/

    • http://www.gnu.org/software/m4/

    • http://www.gnu.org/software/make/

    MySQL 5.1 を設定するには、GNU bison も必要です。できる限り最初バージョンの bison を使用してください。バージョン 1.75 とバージョン 2.1 は動作確認が取れています。bison 1.875 には問題があることが報告されています。問題に遭遇したら、以前のバージョンよりは最近のバージョンにアップグレードするほうがよいでしょう。bison 1.75 以前のバージョンではこのエラーあるかも知れません。

    sql_yacc.yy:#####: fatal error: maximum table size (32767) exceeded
    

    注:テーブルの最大サイズを実際には超えていなくても、bison の旧バージョンのバグでエラーが発生します。

    以下の例はソースツリーの設定に必要な一般的なコマンドを示したものです。最初の cd コマンドはロケーションをツリーの一番上のレベルに変更し、mysql-5.1 を適切なディレクトリ名に置き換えます。2 番目の行は (storage/innobase 用) は MySQL 5.1.12 以前のバージョンにのみ必要です。.

    shell> cd mysql-5.1
    shell> (cd storage/innobase; autoreconf --force --install)
    shell> autoreconf --force --install
    shell> ./configure  # Add your favorite options here
    shell> make
    

    あるいは BUILD/autorun.sh を以下のコマンドのシーケンスとして使用できます。

    shell> aclocal; autoheader
    shell> libtoolize --automake --force
    shell> automake --force --add-missing; autoconf
    shell> (cd storage/innobase; aclocal; autoheader; autoconf; automake)
    

    ディレクトリを storage/innobase ディレクトリに変更するコマンドラインは InnoDB ストレージ エンジンの設定に使用されます。InnoDB のサポートが必要ない場合にはこの行を削除できます。

    注:MySQL 5.1 以降では、ストレージ エンジン専用のコードは storage ディレクトリに移動されています。例えば、InnoDB コードは現在 storage/innobase にあり NDBCluster コードは storage/ndb にあります。

    このステージで予想外の問題が発生した場合には、libtool が間違いなくインストールされているか確認します。

    弊社の標準設定のスクリプト一覧は BUILD/ サブディレクトリにあります。BUILD/compile-pentium-debug スクリプトを使用するほうが上述の shell コマンドよりも使い勝手がいいことがお分かりかと思います。異なるアーキテクチャでのコンパイルでは、Pentium 専用のフラグを削除してスクリプトを変更します。

  3. ビルドが終了したら、make install を実行します。この実行は量産マシンでは注意してください。そのコマンドによって実際のリリースのインストールがオーバーライドされる場合があります。MySQL を別にインストールしている場合には、./configure を --prefix、--with-tcp-port、および --unix-socket-path オプションに対して量産サーバに使用した値と異なる値で実行することをお勧めします。

  4. インストールしたら色々試し新機能をクラッシュさせてみてください。make test の実行から始めてみてください。項25.1.2. 「MySQL Test Suite」 参照。

  5. make 段階になっても、ディストリビューションのコンパイルができない場合は、項1.7. 「質問またはバグの報告」 の説明に従ってその問題を弊社のバグ データベースに入力お願いします。.必要な GNU のツールの最新バージョンをインストールして、弊社の設定ファイルの処理中にクラッシュする場合には、その件も併せてご連絡お願いします。しかし、aclocal を実行して command not found エラーが発生した場合あるいは同様の問題が発生した場合には、レポートしないでください。その代わり、必要なすべてのツールがインストールされ shell がパスを見つけられるように PATH 変数が正しく設定されているか確認してください。

  6. ソースツリーを取得するためにレポジトリを最初に bkf でコピーしたら、pull オプションを使用して定期的にローカルのコピーを更新する必要があります。レポジトリ設定後にこれを行う時には、以下のコマンドを使用します。

    shell> bkf pull
    
  7. ツリーの変更セットのコマンドを changes オプション使用して bkf を実行すると確認できます。

    shell> bkf changes

    次の bkf pull と一緒に使用する変更リストを取得するには

    shell> bkf changes -R

    特定の変更セット (CSETID) のパッチ ファイルを取得するには、以下を使用

    shell> bkf changes -vvrCSETID

    疑問に思う diffs あるいはコードが表示された場合には、MySQL internals メーリング リストにいつでもメールしてください。項1.6.1. 「MySQL メーリング リスト」 参照。また、何でもいいですから何かよいアイデアが浮かんだ場合には、パッチと一緒にメールを上記のメーリング リストに送ってください。

オンラインでも変更セット、コメント、およびソースコードをブラウズできます。MySQL 5.1 のこの情報をブラウズするには、http://mysql.bkbits.net:8080/mysql-5.1 に進みます。

Copyright © 1997, 2010, Oracle and/or its affiliates. All rights reserved. Legal Notices
Top / Previous / Next / Up / Table of Contents
© 2010, Oracle Corporation and/or its affiliates