ダウンロード

提供: Eospedia
2015年3月12日 (木) 06:48時点におけるKinoshita (トーク | 投稿記録)による版

移動: 案内検索

Eosのダウンロード方法について

gitが利用できる方

gitがご利用できる方は、SourceForge.jpからのダウンロード([projects/eos])が可能です。gitコマンド使い方の詳細は、[sourceforge]をご覧下さい。以下は、簡単にインストールに関連するコマンドをまとめておきます。

簡易インストール(git版:初めて Eosを利用したい方、とにかくEosを画像処理に使ってみたい方

 初めてEosを利用したい方は、次のコマンドで実行することが出来ます。

install-eos.sh のダウンロード

curl -L  https://sourceforge.jp/projects/eos/scm/git/base/blobs/master/env/install-eos.sh?export=raw > /tmp/install-eos.sh

若しくは、

wget -q -O -  https://sourceforge.jp/projects/eos/scm/git/base/blobs/master/env/install-eos.sh?export=raw > /tmp/install-eos.sh

として、インストールコマンドをダウンロードします。

Eos_env のダウンロード

curl -L  https://sourceforge.jp/projects/eos/scm/git/base/blobs/master/env/Eos_env?export=raw > /tmp/Eos_env

若しくは、

wget -q -O -  https://sourceforge.jp/projects/eos/scm/git/base/blobs/master/env/Eos_env?export=raw > /tmp/Eos_env

として、環境設定ファイルをダウンロードします。

Eos本体のダウンロード

後に

$ source /tmp/Eos_env
$ source /tmp/install-eos.sh

として実行して下さい。その後、インストール先のディレクトリを尋ねられますので、入力して下さい。そのままEnterキーを押すと、デフォールト$HOME/Eosにインストールされます。

Set the directroy to be installed [/Users/tacyas/Eos]: 
/Users/tacyas/EosTest

として、空のディレクトリを指定して下さい。後は、自動的にダウンロードが始まります。  その後、順調に設定が終了すれば、ホームディレクトリの中の、.bashrcファイルの中に、シェルの起動時にEos_envを実行するスクリプトが挿入されています。うまくいかない場合には、ダウンロードしてきた/tmp/Eos_env、もしくは、上記で指定したディレクトリ/env/Eos_envを起動時に実行して下さい。

$ source Eos_env

にて実行できます。

実行の確認

$ mrcInfo -h

が動けばひとまずインストールの完了です。

●注意事項1:いくつかのコマンドは、cuda、X11などの環境がないために動作しない環境があったりします。その場合には、必要なライブラリ等をインストールしたりする必要があります。その詳細は別に述べます。

●注意事項2:この状態で、自分自身のところで開発を行うことはできます。ただし、sourceforge上にアップロードすることはできません。アップロードしたい場合には、originのURLの変更とsourceforge上のアカウントの登録が必要です。また、最新版しかダウンロードしていません。過去の履歴を全てダウンロードしてこないと、gitの仕様上、アップロードしていくことができません。gitのunshallow機能をつかって、全てをダウンロードする必要があります。詳細は別に述べます。

初めてのディレクトリにインストールする場合

Eosの複製をgitを使って作製します。

共同開発を考えている場合(SourceForge上にアカウントが必要)

編集後、SourceForge上にソースをアップ(push)する事を前提とする場合
※ SourceForge上のUsernameとPassword及びpublic_keyをsourceforge上に登録する必要があります。 下記を実行する場合、Eos_envをダウンロードしたのち

$ source Eos_env

を実行してから行うか、もしくは、$EOS_HOMEの替わりにインストールしたいディレクトリを設定する必要があります。

ユーザー名とSourceForge上のUsernameが異なる場合は環境ファイルにてEOS_GITUSERの設定をします。

export EOS_GITUSER=(SourceForge上のUsername)
#export EOS_GITUSER=$USER

$EOS_HOMEが既に設定されている場合

$ git clone --depth 1 ${EOS_GITUSER}@git.sourceforge.jp:/gitroot/eos/base.git $EOS_HOME
   or 
$ git clone --depth 1 https://scm.sourceforge.jp/gitroot/eos/base.git $EOS_HOME

インストールを指定したい場合、指定したいディレクトリを$HOME/Eosとすると、下記のように指定する必要があります。

$ git clone --depth 1 ${EOS_GITUSER}@git.sourceforge.jp:/gitroot/eos/base.git $HOME/Eos
   or 
$ git clone --depth 1 https://scm.sourceforge.jp/gitroot/eos/base.git $HOME/Eos

Eosを使いたいだけの場合、もしくは、自分の所だけで開発を行いたい場合(SourceForge上にアカウントが必要ない)

編集しないか、もしくは、編集してもSourceForge上にソースをアップ(push)する事を前提としない場合

$ git clone --depth 1 git://git.sourceforge.jp/gitroot/eos/base.git $EOS_HOME
   or 
$ git clone --depth 1 http://scm.sourceforge.jp/gitroot/eos/base.git $EOS_HOME


【注意1】sshやhttpsを使ってダウンロードする場合には、開発者として登録が必要です。ssh-keygenを使って作製したpublic_keyをsourceforge上に登録する必要があります。

【注意2】gitを使ってダウンロードした場合には、そのままでは、Eos上で新たに開発したものを登録(git-push)することができません。開発者として登録をお願いします。

【注意3】 --depth 1は、最新版のみを取得するためのオプションです。つけない場合は、すべての履歴をコピーすることになります。

【注意4】使用するコマンドによっては他のライブラリをothersからダウンロードしてリビルドする必要があります。ダウンロード方法は#付加的なレポジトリを利用したい場合に記載しています。

付加的なレポジトリを利用したい場合

チュートリアルで利用するデータやMakefileが置かれています。 いずれも、$EOS_HOMEのディレクトリで実施して下さい。

$ cd $EOS_HOME
$ git clone --depth 1 git://git.sourceforge.jp/gitroot/eos/tutorial.git

テスト用のデータファイルなどが置かれています。

$ cd $EOS_HOME
$ git clone --depth 1 git://git.sourceforge.jp/gitroot/eos/data.git

Eosのマニュアルなどが置かれています。

$ cd $EOS_HOME
$ git clone --depth 1 git://git.sourceforge.jp/gitroot/eos/optional.git

Eosで利用される他の開発コードが置かれています。コマンドや環境によっては動作するのに必要な場合もあります。

$ cd $EOS_HOME
$ git clone --depth 1 git://git.sourceforge.jp/gitroot/eos/others.git


全てのデータを一括でダウンロードしたい場合(makeコマンドを使用)

まず、最新のMakefile最新のEos_envをダウンロードして、Eos_envのファイルを開き、EOS_HOMEにダウンロードディレクトリを設定します。(ディレクトリは空にして下さい。)さらに、EOS_GITUSERにsourceforgeのアカウントを設定します。お持ちでない場合は空にして下さい。(この場合はpushができませんので、ご注意ください。)

設定後に下記のコマンドを実行します。

$ source Eos_env		# Eos_envがあるディレクトリで実行
$ make git-clone-all		# Makefileがあるディレクトリで実行


ダウンロード完了後のMakefile、env/Eos_envは$EOS_HOME内のものを使用しますので、EOS_HOMEやEOS_GITUSERの内容を同じように変更します。

最新版に更新する場合

Eosの最新にアップデートすることができます。

最新版の取得

$ git fetch            ;# 変更があったファイルをダウンロード
   or
$ git fetch ssh://${EOS_GITUSER}@git.sourceforge.jp:/gitroot/eos/base.git
   or
$ git fetch git://git.sourceforge.jp/gitroot/eos/base.git
最新版の取得(別法)

git pullは、fetch/merge等が自動的に実行されます。自分自身がソースコードを変更していない場合には一度に実施することができます。分かっている場合にのみ、使いましょう。疑問が少しでもある場合には、fetch/mergeを順に行うことをお薦めします。

$ git pull git://git.sourceforge.jp/gitroot/eos/base.git

変更になっている部分の確認

$ git log   FETCH_HEAD ;# 変更になっている部分を表示

変更を追加

変更になっている部分を確認した後、自分自身が変更したものとマージしても問題がなければ、変更を追加します。自分自身も変更している場合には注意が必要です。

$ git merge FETCH_HEAD ;# 変更になっているものをマージする

makeを用いた更新

$EOS_HOME/Makefileが最新のものになっていれば、上記のことを下記のMakefileにて実行できます。
※ $EOS_HOMEは$HOME/Eosディレクトリを指しています。
 環境ファイルをそのまま使用する場合は、baseディレクトリを$HOMEに置き、Eosとリネームして下さい。

$ cd $EOS_HOME
$ make git-fetch
$ make git-merge

Eosの機能追加、修正を登録する場合

自分自身が機能追加、修正をかけ、登録する場合の例を下記に挙げておきます。

git add         ; # 自分自身の複製で変更したものを加える
git commit      ; # 変更したモノをgitに格納する
#
git push        ; # git serverに格納
 or
git push origin master
 or
git push origin master

※ gitコマンド使い方の詳細は、[sourceforge]もしくは、gitの解説書をご覧下さい。


Eosそのものの機能(Eosが提供しているMakefile)を使ってインストールすることもできます。

$ cd $EOS_HOME               ; # Eosのディレクトリに移動します。
$ make git-add                 ; # 変更や加えられたファイルをレポジトリに一時的に格納します
$ make git-commit           ; # 変更点等のコメント毎、レポジトリに格納します

タグを変更したいとき
※ 現在、ソースコードをアップロード毎にバージョン名によるタグで管理しています。Eosの開発のルールに従って、アップロード前にタグを付けるよう、ご協力をお願いします。

$ git tag
$ git tag newtag

アップロードします

$ make git-push              ; # SourceForge上にアップします

直接ダウンロードしたい方、開発環境は必要なく、実行だけを行いたい方

下記のサイトから、バイナリtarballをダウンロードが可能です。

[EosHomePage]
    or
[Sourceforge]


上記にアップされていないバイナリ形式に興味がある方は安永(yasunaga@bio.kyutech.ac.jp)までご連絡下さい。

作成されたディレクトリの構成(Eosの構造)は別ページにて説明しています。

※ 2013/02より、大幅にディレクトリの構成が変更になっています。ご注意下さい。目的は、ホスト依存のバイナリコードと非依存なソースコードを切り離すことが目的です。ヘテロな環境での実行を維持しながら、NFSなどでexportされた一つのディレクトリで実行するために変更しました。

動作環境

 現在、手元に環境があり、動作することが確認出来ているのは、下記のものです。

LINUX 32bits/64bits
OS-X  32bits/64bits
Windows with Cygwin

うまく動作しない場合

コンパイルされていない場合

Q1) 使いたいツールを実行しようとすると Not Installed: XXXXX-version YYYYYY といわれる

A1) 設定された環境でコンパイル・リンクがなされていません。src/Tools以下のディレクトリにあるCLASS/YYYYYY のディレクトリに移動し、make check; make depend; make install とうってみましょう。

Xcodeのインストールが不十分な場合

Q2 ) OS-Xでmakeを利用しようとすると下記のようなエラーコードがでる

sh: line 1:  8482 Trace/BPT trap: 5       /Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk  -find make 2> /dev/null
make: error: unable to find utility "make", not a developer tool or in PATH

A2) いずれかのダイナミックライブラリがうまくインストールされていない場合にこのようなエラーが出ます。

直接、下記のコマンドを実行してみましょう。

/Applications/Xcode.app/Contents/Developer/usr/bin/xcodebuild -sdk  -find make

足りないライブラリに関してエラーを出力しています。多くの場合、ダイナミックライブラリのパスの設定の問題です。

sudo cp /System/Library/Frameworks/ApplicationServices.framework/Versions/A/Frameworks/ImageIO.framework/Resources/libTIFF.dylib $EOS_HOME//util/X86MAC64/lib/

として、必要とされるライブラリを$EOS_HOME//util/X86MAC64/lib/コピーしてみて下さい。

gitのメモリが足りないとき

Q3) git cloneをかけようとすると、

remote: aborting due to possible repository corruption on the remote side.
fatal: early EOF
fatal: index-pack failed

として停止してしまう。

A3) これは、Eosのパッケージが大きすぎて、gitがindexを取得できないために生じます。