# groonga - オープンソースのカラムストア機能付き全文検索エンジン

- English

# 12.3.2.2. GNU/LinuxまたはUnix上でCMakeを使ってリポジトリーのGroongaをビルドする方法

このドキュメントではGNU/LinuxまたはUnix上でCMakeを使ってリポジトリーのGroongaをビルドする方法を説明します。

Unixとは*BSDやSolaris、OS Xなどのことです。

Groongaの開発にWindowsを使いたい場合は Windows上でCMakeを使ってリポジトリーのGroongaをビルドする方法 を参照してください。

Groongaをリリースするときはこの方法を使うことはできません。GroongaのリリースシステムはGNU Autotoolsを使ったビルドでしかサポートしてません。GNU Autotoolsを使ったビルドについては GNU Autotoolsを使ってリポジトリーのGroongaをビルドする方法 を参照してください。

## 12.3.2.2.1. 必要なソフトウェアのインストール

TODO

> - CMake
> - Ruby
> - Git
> - Cutter
> - ...

## 12.3.2.2.2. リポジトリーからGroongaをチェックアウト

ユーザーはリリースされたソースアーカイブを使います。しかし、開発者はリポジトリーからGroongaをビルドするべきです。なぜなら、リポジトリーにあるソースコードが最新のソースコードだからです。

Groongaのリポジトリーは GitHub にあります。リポジトリーから最新のソースコードをチェックアウトします:

    % git clone --recursive git@github.com:groonga/groonga.git

## 12.3.2.2.3. `cmake` を実行

あなたの環境用の `Makefile` を作る必要があります。

`cmake` へオプションを渡してビルドパラメーターをカスタマイズできます。

開発者向けのオススメ `cmake` オプションは次の通りです:

    % cmake . -DCMAKE_INSTALL_PREFIX=/tmp/local -DGRN_WITH_DEBUG=on -DGRN_WITH_MRUBY=on

それぞれのオプションの説明です。

`-DCMAKE_INSTALL_PREFIX=/tmp/local`

> あなたのGroongaを一時ディレクトリーにインストールように指定しています。 `/tmp/local` ディレクトリーを削除することで「クリーンインストール」を試すことができます。インストール処理をデバッグするときに便利です。

`-DGRN_WITH_DEBUG=on`

> C/C++コンパイラーのデバッグオプションを有効にします。GDBやLLDBなどのデバッガーでデバッグするときに便利です。

`-DGRN_WITH_MRUBY=on`

> mrubyサポートを有効にします。この機能はデフォルトで無効になっていますが、開発者はこの機能を有効にするべきです。

## 12.3.2.2.4. `make` を実行

これでGroongaをビルドできるようになりました。

開発者向けのオススメの `make` のコマンドラインです:

    % make -j8 > /dev/null

`-j8` はビルド時間を短縮します。並列ビルドが有効になっているためです。もし、CPUコアが8よりもたくさんあるのであれば、 `8` をもっと増やすとさらにビルドタイムを短縮できるでしょう。

`> /dev/null` をつけることで警告メッセージとエラーメッセージだけが見えるようになります。開発者は新しいコミットで警告メッセージもエラーメッセージも増やすべきではありません。

## 12.3.2.2.5. 参考

> - テスト方法