インストール手順

別ページ

Home

動作プラットフォーム

基本システム

UNIX (System V,BSD,POSIX) に "ほぼ" 準拠した OS (Linux や Mac OS X など)と C++ コンパイラのみで,データの収集やデータファイルの読み書きを含む Kinoko のほとんど全ての機能を利用することができます(ただし,GUI は含まれません).

ハードウェアについては,特に要求性能はありません.使用する OS が快適に動作するレベルのものであれば問題なく使用できるはずです.実験のデータ量によっては,イベントビルダなどで大きめのメモリが必要になったり,高速大容量のディクスが必要になるかもしれませんが,これらはむしろ測定系により決まる要求性能となります.

オプションソフトウェア

基本システムの他,以下のソフトウェアが利用できると,Kinoko をより便利に活用できるようになります.特に,"強く推奨" と書かれているソフトウェアは,特別な理由が無い限りは,インストールしておくことを強く推奨します.最近の Linux ディストリビューションでは,これらのほとんどはほぼデフォルトでインストールされます.以降の説明では,"強く推奨" となっているソフトウェアはインストールされているものとします.

GTK+ ライブラリ (2.4 以上) [強く推奨]: http://www.gtk.org/
Kinoko の GUI インターフェースが使用できるようになります.
「GTK+ 2.4 以上」が必要です.「GTK+ 1.2 と libxml と imlib の組合せ」でもかつては動作していましたが,現在のバージョンではほとんどテストされていません.この場合は Kinoko Version 1.1 以前のものを使用してください.

標準UNIXツール類 [強く推奨] (xterm, ssh, vi / emacs)
Kinoko のユーティリティツール類で使用します.

Perl [強く推奨]: http://www.perl.com/
Kinoko に付属するいくつかのユーティリティが利用できるようになります.
Kinoko をウェブブラウザにより外部からコントロールできるようになります.

zlib ライブラリ [推奨]: http://www.zlib.net/
データ圧縮機能を利用できるようになります.
圧縮して記録されたデータを読む場合にもこのライブラリがリンクされている必要があります.

GNU/readline ライブラリ [推奨]: http://www.gnu.org/directory/readline.html
コマンドラインがかなり快適になります.これを利用するには,curses または ncurses ライブラリもインストールされている必要があります(普通はインストールされています).

ROOT [推奨]: http://root.cern.ch/
Kinoko がオンラインで作成したヒストグラム等を ROOT 形式で保存できるようになります.
インタプリタ版の KinokoScript で ROOT のファイルを読み書きできるようになります.

SQLデータベース
システムのいろいろな場面でデータベースにアクセスできるようになります.以下は,現在サポートされているデータベースシステムのリストです.

Web サーバ
動作中の Kinoko をウェブブラウザ(Internet Explorer を除く)からリモートで操作できるようになります.また,Kinoko が生成したランサマリをブラウザ経由で参照できるようになります.PHP が利用できるとさらに便利です.

XSLT プロセッサ
Kinoko が XML 型式で生成するランサマリなどのファイルから HTML などを自動生成させることができます.以下はフリーで利用できる XSLT プロセッサの一部です.

[注意]

動作確認プラットフォーム

以下は開発者が実際に使用したプラットフォームです.これ以外のものでも上記の条件を満たしていれば問題なく使えるはずです.
Ubuntu 12.04 LTS (32bit/64bit)

Ubuntu 10.04 LTS / 10.10 / 11.10 (32bit/64bit)

Fedora 10 / 12 / 15 / 16 (32bit/64bit)

Mac OS X 10.5 (Leopard)
Mac OS X 10.6 (Snow Leopard) 32bit 環境

システム設定

KiNOKO の基本的な部分は特別な設定をすることなく標準的な UNIX 環境で動作します.しかしながら,下記に示すような特殊な使い方をする場合や大規模なシステムを構築する場合,いくつかのシステム設定が必要になる場合があります.以下にその設定方法を示します.
KiNOKOを分散環境で使う場合
[注意] Kinoko を初めて使う場合には,この設定はとりえあず必要ありません.複数のコンピュータを使った大規模なデータ収集系を構築するときに必要になります.

KiNOKO を複数のコンピュータ上で動作させるためには,全てのコンピュータに KiNOKO がインストールされており,相互に ssh でパスワードなしでログインできるように設定されていなければなりません.

これらのコンピュータの OS が同じものである必要はありません.PC/Linux,商用サーバシステム,Mac OS X などの混在が可能です.CPU のタイプが異なっていても構いませんが,エンディアンの異なるものが混在していると,データ処理においてバイトオーダ変換のオーバーヘッドが生じるようになります.

KiNOKO を使用するユーザアカウント名がコンピュータ間で同じである必要はありませんが,同じにしておいたほうが混乱を避けられます.また,KiNOKO のインストールディレクトリや作業ディレクトリも同じ場所であるほうが個別の設定を避けられます.NFS により共有されるディレクトリを使用するのが簡単です.

データファイルを置く場所が共有されている必要はありません.むしろ,NFS 共有されていない場所にデータを記録するほうが,ネットワークの問題を避けるのに有効のようです.KiNOKO では,データ記録プロセスを任意のコンピュータ上に配置することができます.

まとめ
WebKinoko を使う場合
[注意] Kinoko を初めて使う場合には,この設定はとりえあず必要ありません.WebKinoko が必要になったときにいつでも行うことができます.

KiNOKO をウェブブラウザに接続して遠隔使用したい場合,KiNOKO を最初にスタートさせるコンピュータ(主にコントロール用途)に Apache ウェブサーバがインストールされ,動作している必要があります.また,KiNOKO から書き込み可能なディレクトリ(ユーザが指定できます)において KiNOKO が実行時に生成する CGI スクリプトが実行可能になっている必要があります.PHP が利用できると,過去のデータの一覧などができるようになります.

現在のところ,WebKinoko はセキュリティ上の問題を含んでいる可能性があるので,これらの WebKinoko のサーバには信頼できる内部ネットワークからのみ接続できるようにするか,IP レベルでのアクセス制限を設定することを強く推奨します.

まとめ
システムパラメータの設定
[注意] Kinoko を初めて使う場合には,この設定はとりえあず必要ありません.比較的大規模のデータ収集系を構築する際に必要となることがあります.この設定は必要になったときにいつでも行うことができます.

Kinoko では,データのバッファリングに共有メモリを使用します.使用するバッファのサイズはユーザ指定ですが,これが OS で設定されている上限を越えるとエラーになります.特に,Mac OS X では初期設定が小さめ (Leopard で 4MB) になっているので注意が必要です.

SmallKinoko の初期設定値は 4MB です.バッファの使用量は Kinoko のロガーウィンドウに常に表示されます.足りなくなると Buffer Full の警告が出るようになります.

共有メモリの最大サイズの取得方法および設定方法は OS によって異なります.これについて,PostgreSQL のマニュアルのカーネルリソースの項 (http://www.postgresql.org/docs/8.4/static/kernel-resources.html) に詳しい解説があります.

Kinoko では,プロセス間の通信にメッセージキューを使用します.最低限 1024 byte 程度が使用できれば動作しますが,キューが一杯になったときにメッセージを退避させるためのコピーを行うので,キューの容量が小さいと大規模なシステムにおいて全体の性能が若干低下する可能性があります.Linux では問題になることはありませんが,Mac OS X では容量が小さく設定されている(Leopard で 2048 byte)ため,画面に警告メッセージが表示されることがあります.Mac OS X 10.5 の時点で,この設定値は変更できないようです.

まとめ
CC/NET を使う場合
KiNOKO で CC/NET を使う場合,CC/NET 上のシングルボードコンピュータに KiNOKO をインストールして使う方法と,CC/NET のリモートアクセス機能を利用する方法があります.ただし,現在のバージョンでは,前者のみがテスト済みです.

CC/NET に KiNOKO をインストールする場合,データ収集の全ての処理を CC/NET 上で行うこともできますが,実際には,もう一つ別のコンピュータで KiNOKO 本体を動かして,CC/NET 上には KiNOKO のデータ収集プロセスだけを配置するほうが簡単で性能も上がります.データファイルの管理も楽です.この方法がクイックツアーおよびリファレンス > CC/NET(直接アクセス)に説明してあります.

まとめ
Mac OS X へのインストール
Mac OS X で GUI を含む KiNOKO を使用するためには,GTK-OSX (GTK+ on Mac OS X) をインストールする必要があります.GUI を使用しない場合は,GTK-OSX は不要です.

[注意] 2010年2月8日の時点で,GTK-OSX は Mac OS X の 64bit 環境ではうまく動作しません. これは,GTK の pango-quartz が 64bit Carbon に取り込まれなかった ATSUI に依存しているためです.Mac OS X 10.6 (Snow Leopard) の 64bit 環境でそのまま使用すると,実行時に以下のエラーを出して停止してしまいます.

dyld: Symbol not found: _cairo_quartz_font_face_create_for_atsu_font_id Referenced from: /Users/sanshiro/gtk/inst/lib/libpangocairo-1.0.0.dylib

この問題は近い将来解決されると思いますが,現状では 32bit 環境でのみ動作確認を行っています.

GTK-OSX のインストールは GTK-OSX ウェブサイト(https://live.gnome.org/GTK%2B/OSX/Building) に解説がありますが,参考に,開発者が実際に行った手順を以下に示します.Mac OS X のデフォルトインストールに,インストール DVD に同梱の Xcode を入れた状態から開始しています.これは,2010年2月8日の時点のものです.

  1. "git" をインストール(http://metastatic.org/source/git-osx.html)

  2. "GTK-OSX" のセットアップスクリプトをダウンロードして実行
    ダウンロード元:http://git.gnome.org/browse/gtk-osx/plain/gtk-osx-build-setup.sh

    下記の手順により ~/Source と ~/.local の下に jhbuild が作られ,~/.jhbuildrc に GTK-OSX のためのビルドコンフィギュレーションファイルが作られます.~/Source という名前を変えたい場合は,gtk-osx-build-setup.sh の先頭付近で SOURCE 変数を定義している部分を書き換えてください.

    % chmod 755 ~/Download/gtk-osx-build-setup.sh % ~/Download/gtk-osx-build-setup.sh

  3. Mac OS X 10.6 (Snow Leopard) では,32bit でコンパイルするように指定.

    2010年2月時点で,GTK-OSX は 64bit 環境ではうまく動作しません.GTK を 32bit でコンパイルするために,~/jhbuildrc-custom に以下の行を加えてください.詳細は https://live.gnome.org/SnowLeopard を参照してください.

    setup_sdk("10.6", "10.6", ["i386"])

  4. GTK-OSX をビルド

    下記の手順により,~/gtk に GTK-OSX がインストールされます.インストール先を変えたい場合は,~/.jhbuildrc-custom ファイルで prefix 変数を設定してください.

    % ~/.local/bin/jhbuild bootstrap % ~/.local/bin/jhbuild build meta-gtk-osx-bootstrap % ~/.local/bin/jhbuild build meta-gtk-osx-core
    インストールが成功すると,gtk/inst/bin の下に pkg-config が生成され,これによって GTK のインストールが確認できます.
    % export PATH=$PATH:~/gtk/inst/bin % pkg-config --cflags gtk+-2.0 -I/Users/sanshiro/local/gtk/inst/include/gtk-2.0 ... % pkg-config --libs gtk+-2.0 -L/Users/sanshiro/local/gtk/inst/lib -lgtk-quartz-2.0 ...
    gtk/inst/bin の下に GTK のデモプログラム gtk-demo ができるので,これで GTK の動作を確認してください.
    % ~/gtk/inst/bin/gtk-demo

  5. pkg-config にパスを通す
    KiNOKO のコンパイル直前に以下のコマンドを実行するか,.bashrc などの起動スクリプトに追加しておくかしてください.
    % export PATH=$PATH:~/gtk/inst/bin

なお,Mac OS X において, ~/.bashrc ファイルを使うためは,~/.bash_profile ファイルを(なければ)作成して,以下の行を追加する必要があります.

source .bashrc
KiNOKO ではいろいろな設定を ~/.bashrc ファイルに記述するので,特に理由がない限り上記のように設定しておいてよいと思います.

KiNOKO をコンパイルする際は,以下の「ソースコードのコンフィギュレーション」のところで,構成名 OSX を指定してください.

まとめ

コンパイル

パッケージを展開すると kinoko という名前のディレクトリが作成されます.すでに古いバージョンの Kinoko がインストールされている場合は,古い方のディレクトリの名前を変えておいてください.日付つきの名前にしておくと管理が楽になります.

Kinoko は,パッケージの展開で作成される kinoko ディレクトリツリー以外に一切ファイルを作成しません(実行時に生成されるデータファイル類を除く).そのため,もし新しいバージョンでトラブルが生じても,古いバージョンのディレクトリ名を元に戻せば,以前の環境を完全に復元できます.実行時に生成されるファイルは基本的に互換性が保たれているので,Kinoko の実行は kinoko ディレクトリツリーの外で行うのが簡単です.

  1. Kinoko をインストールするディレクトリに移り,必要なら古い Kinoko の名前を変えておく

    % cd kinokoをインストールするディレクトリ % mv kinoko kinoko.old.日付

  2. Kinoko のパッケージを展開する.

    % gunzip kinoko.tar.gz % tar xvf kinoko.tar

    これにより,ディレクトリ kinoko が作成されます.

  3. 環境にあわせてソースを構成(configure)する.

    % cd kinoko/src % ./configure-for LINUX

    ここで,configure-for は,引数に指定された名前によりコンパイラやコンパイルオプションなどを開発者がよく使う設定にして configure を呼び出す簡単なシェルスクリプトです.引数に LINUX を指定すると,g++ コンパイラを使って,利用可能な全てのライブラリを使用するように構成します.LINUX-MIN を指定すれば使用するライブラリを減らして構成します.コンパイルエラーが起きる場合はこちらの構成を試してみてください(コンパイルエラーの原因の大多数は開発用パッケージの不足か不一致です).

    東陽テクニカの CC/NET 上の組込みコンピュータへインストールする場合は CCNET を指定してください.

    Mac OS X へインストールする場合は OSX を指定してください.

    現在のところ,以下の構成オプションが定義されています.

    名前コンパイラコンパイラオプションライブラリ
    LINUXg++-WallROOT や SQL など全て (GTK は Pango 不使用)
    LINUX-MINg++なし最低限のシステムライブラリ と GTK
    OSXg++-m32 -WallROOT と GTK-OSX (Pango 使用)
    AIXxlC-Wl,-bbigtocなし (GUI もなし)
    AIX64xlC-q64 -Wl,-bbigtocなし (GUI もなし)
    AIX-GCCg++-Wl,-bbigtocなし (GUI もなし)
    CCNETg++-Wall最低限のシステムライブラリと camlib
    以下のように第2引数にコンパイラオプションを渡すこともでます.
    % ./configure-for LINUX "-g -O2"
    [注意]GCC 3 系以降では,-O2 以上を指定する場合は,-fno-strict-aliasing も併せて指定してください.なくても動作するかもしれませんが,特にハードウェアに近い部分での検証が十分でない可能性があります.

    configure-for を使わずに,普通に手動でパラメータを設定して直接 configure を使っても構いません.この場合は CXX などの環境変数と,--enable/--disable や --with/--without などのオプションを適切に指定する必要があります.

    % export CXX="g++" # bash の例.csh/tcsh では setenv CXX "g++" とする % export CPPFLAGS="" % export CXXFLAGS="-Wall -g" % export MAKE="gmake" % ./configure --without-readline --with-PostgreSQL

    [KDF4] このバージョンの Kinoko では,古い Kinoko (Version 1.x) との混在環境での問題を避けるため,デフォルトで KDF4 を出力しないようになっています(この場合でも KDF4 ファイルの読み込みは可能).もし書き出しファイルに KDF4 を使用したい場合,configure-for スクリプトの先頭付近にある KDF_VERSION=2 という文をコメントアウトしてください.また,configure を直接使う場合は,KDF4 がデフォルトになるので,KDF4 を使いたくない場合は,--enable-kdf2 オプションを指定してください.

    KDF4 を使うとデータファイルがかなり小さくなり,また,整数に加えて実数や文字列なども扱えるようになりますが,その必要がなければ,KDF2 のままでも動作に支障はありません.KDF4 の詳細については,KiNOKO 2.0 リリースノートを参照してください.

  4. コンパイル.普通の PC で 10〜15分ほどかかります.

    % make

    最後に,Make: successful と表示されればコンパイルは成功です.

デバイスドライバのインストール

使用するコントローラにあわせたデバイスドライバをインストールしてください.
Linux で東陽テクニカ製の CAMAC コントローラ CC/7x00 (PCI/ISA)を使用する場合
Linux で豊伸電子製の CAMAC コントローラ CCP (USB/PCI/ISA) を使用する場合

Kinoko に付属している camdrv をインストールしてください.camdrv は kinoko/drv/camdrv にあります.camdrv のインストール手順については,camdrv ホームページ を参照してください.なお,camdrv は Kinoko 本体よりも頻繁に更新しリリースします.インストールの前に最新リリースを確認し,必要に応じて Kinoko 付属のものと入れ替えてください.

以下に,手順を簡単に示します.デバイス上のジャンパスイッチの設定なども必要なので,注意してください.

% cd kinoko/drv/camdrv/Linuxバージョン-デバイス名 % make % su # make install # exit
Linux で SBS Technologies (Bit3) 社製 VME インターフェース Model-617/618/620 を使用する場合

Kinoko に付属している vmedrv をインストールしてください.vmedrv は kinoko/drv/vmedrv にあります.vmedrv のインストール手順については,vmedrv ホームページ を参照してください.なお,vmedrv は Kinoko 本体よりも頻繁に更新しリリースします.インストールの前に最新リリースを確認し,必要に応じて Kinoko 付属のものと入れ替えてください.

以下に,手順を簡単に示します.デバイス上のジャンパスイッチの設定なども必要なので,注意してください.

% cd kinoko/drv/vmedrv/Linuxバージョン-Bit3_617 % make % su # make install # exit

東陽テクニカ/KEK製 CAMAC インターフェース CC/NET を使用する場合

CC/NET 上に Kinoko をインストールした場合は,設定作業は必要ありません.

CC/NET のリモートアクセス機能を使用する場合,データ収集時に製品付属の ccnet-server プログラムが走っている必要があります.CC/NET 起動時に自動で立ち上がるように設定しておくのが簡単で混乱も避けられます.

環境変数の設定

Kinoko をコンパイルすると,kinoko/srckinoko-cshrckinoko-bashrc というファイルができます.これを自分のホームディレクトリにある .cshrc(または.tcshrc) か .bashrc に追加してください.

[注意] 以下の例で,不等号記号(>)は2つです.1つにするとファイルを上書きし,中身が消えてしまいます.不安な場合はエディタを使ってコピーペーストしてください.

bash を使用している場合 $ cat kinoko-bashrc >> $HOME/.bashrc tcsh を使用している場合 % cat kinoko-cshrc >> $HOME/.cshrc

以下に,生成される kinoko-bashrc の例を示しておきます.

### KiNOKO ### export KINOKO_ROOT=/home/sanshiro/kinoko export KINOKO_XTERM=/usr/bin/xterm export KINOKO_RSH=/usr/bin/ssh export KINOKO_CONTROL_PORT_BASE=40000 export KINOKO_DATASTREAM_PORT_BASE=42000 export KINOKO_SHELL_PORT_BASE=45000 export KCOM_PATH=.:$KINOKO_ROOT/bin export KORB_PROJECT_PATH=$KINOKO_ROOT export PATH=$PATH:$KINOKO_ROOT/bin
環境変数の設定を行ったら,その変更を反映させるために,一度ウィンドウを閉じてください.


Edited by: Enomoto Sanshiro