Linux環境にMySQLをソースからインストールしたいのですが、いまいちconfigureオプションがよく分からずつまずくこと一日。

MySQLのバージョンは5.1.34なので…新しいやつですね。

configureオプションのヘルプで中身を見てみても全部英語ですし、MySQLの本家サイトを見に行ってもPHPのconfigureオプション一覧、のようなページは見当たらず。
ところどころ書いてあるのですが、場所が散っていてどうも調べるのが大変だということで、全部見切れていないということもあるのですが…

地道に調べたり訳したりするしかないのかと、とりあえず必要そうな分を色々と見てみました。

覚えていられるわけもないので、備忘録代わりに書き留めておきます。






Configuration:
-h, --help
ヘルプ情報表示

-V, --version
バージョン情報表示

-q, --quiet, --silent
configure実行時、"Checking..."メッセージを表示しない

-n, --no-create
Makefileなどのファイルを生成しない(checkのみ行う)

--srcdir=DIR
MySQLのソースコードを展開したディレクトリの検索


Installation directories:
--prefix=PREFIX
OS非依存のファイル群をインストールするディレクトリ
[/usr/local]

--exec-prefix=EPREFIX
実行ファイル群をインストールするディレクトリ
[PREFIX]


Fine tuning of the installation directories:
--bindir=DIR
ユーザが使用するMySQLのコマンド群をインストールするディレクトリ
[EPREFIX/bin]

--sbindir=DIR
システム実行ファイルをインストールするディレクトリ
[EPREFIX/sbin]

--libexecdir=DIR
サーバmysqldをインストールするディレクトリ
[EPREFIX/libexec]

--sysconfdir=DIR
読み取り専用の設定ファイルの保存先
[PREFIX/etc]

--localstatedir=DIR
データベースディレクトリ
[PREFIX/var]

--libdir=DIR
ライブラリ群をインストールするディレクトリ
[EPREFIX/lib]

--includedir=DIR
C/C++言語のヘッダーファイル群をインストールするディレクトリ
[PREFIX/include]

--oldincludedir=DIR
Cヘッダーファイル群のあるディレクトリ(gcc以外のコンパイラ使用時)
[/usr/include]

--datarootdir=DIR
読み取り専用のデータ設定ファイルの保存先
[PREFIX/share]

--datadir=DIR
設定ファイルのテンプレートや各種言語ごとのエラーメッセージなどを
インストールするディレクトリ
[DATAROOTDIR]

--mandir=DIR
manコマンド用データをインストールするディレクトリ
[DATAROOTDIR/man]


System types:
--build=BUILD
MySQLをコンパイルするマシンのプラットフォーム・アーキテクチャを設定
[自動検出]

--host=HOST
クロスコンパイルする際に、MySQLサーバを稼動させるターゲットマシンの
プラットフォーム・アーキテクチャを設定
[BUILD]


Optional Features:
--enable-local-infile
LOAD DATA LOCAL INFILE文を実行可能とする
(default: disabled)

--with-charset=CHARSET
デフォルトの文字コードを設定
以下のものから選べる
armscii8 ascii big5 cp1250 cp1251 cp1256 cp1257
cp850 cp852 cp866 cp932 dec8 eucjpms euckr gb2312 gbk geostd8
greek hebrew hp8 keybcs2 koi8r koi8u
latin1 latin2 latin5 latin7 macce macroman
sjis swe7 tis620 ucs2 ujis utf8

--with-extra-charsets=CHARSET,CHARSET,...
MySQLが使用可能な文字コードのリストを設定
複数の文字コードをカンマ(,)で区切って選択することが可能
complexまたはallで使用可能な全ての文字コードをコンパイルの対象にする
complex:動的にロードできないものはバイナリに加え、
動的にロードできるものは必要になった時点でロードされるようにする
all:全ての文字コードを対象にし、全てを最初からバイナリに加える

--with-pthread
(強制的に)pthredライブラリを使用する

--with-named-thread-libs=ARG
指定したスレッドライブラリを使用する

--with-named-curses-libs=ARG
指定したcursesライブラリを使用する

--with-unix-socket-path=SOCKET
TCP/IP接続のためのUNIXドメインソケットを指定する

--with-tcp-port=port-number
クライアントと接続するためのTCP/IPポート番号
(default 3306)

--with-mysqld-user=username
mysqldサーバのユーザを指定する

--with-libwrap=DIR
libwrap(tcp_wrappers)をサポートする

--with-mysqld-ldflags
mysqldサーバに静的リンクされたプログラムのコンパイル

--with-client-ldflags
mysqlクライアントに静的リンクされたプログラムのコンパイル2

--without-server
クライアントmysqlのみコンパイルし、サーバは作成しない

--with-embedded-server
組み込み用サーバ(libmysqld)を作成する

--without-query-cache
クエリキャッシュを作らない

--without-docs
ドキュメントを作成しない

--without-readline
MySQLに付属するreadlineライブラリを使わず、OSが準備している
readlineライブラリを使用する

--without-libedit
MySQLに付属するライブラリlibeditを使わず、OSが準備している
libeditorライブラリを使用する



まだ他にもたくさんあるのですが、それは余裕のある時に追記、修正をしていこうと思います。
…MySQLのconfigureも奥が深そうです…


MySQL Pocket Reference (Pocket Reference (O'Reilly))
MySQL Pocket Reference (Pocket Reference (O'Reilly))
Amazon価格:¥ 1,288 (価格は3月11日 8:07現在)
私のおすすめ度:★★★
Amazonおすすめ度:★★★