「RELIONのMacへの導入」の版間の差分
(ページの作成:「===XQuartz のインストール=== "http://www.xquartz.org/"からファイルをダウンロードし、インストールします。<br> 2016/04/13日現在のバー...」) |
(→Relion のインストール) |
||
(同じ利用者による、間の3版が非表示) | |||
行7: | 行7: | ||
ダウンロードにはApple IDが必要です。<br> | ダウンロードにはApple IDが必要です。<br> | ||
今回は、Mac OSX El Capitant 10.11.4のために、Command Line Tools (OS X 10.11) for Xcode 7.3を使用しました。<br><br> | 今回は、Mac OSX El Capitant 10.11.4のために、Command Line Tools (OS X 10.11) for Xcode 7.3を使用しました。<br><br> | ||
+ | |||
+ | ===GFortranのインストール=== | ||
+ | Open MPIのインストールには、GFortranが必要です。<br> | ||
+ | Macには、デフォルトではGFortranが入っていないようなので、入れる必要があります。<br> | ||
+ | 今回は、Homebrewを使い、gcc-4.9と一緒にgfortran-4.9をインストールします。 | ||
+ | $ brew install homebrew/version/gcc49 --with-fortran | ||
+ | "gfortran"で実行できるように、リンクをはります。 | ||
+ | $ sudo ln -sf /usr/local/bin/gfortran-4.9 /usr/bin/gfortran | ||
+ | インストールできているか確認します。 | ||
+ | $ gfortran -v | ||
+ | バージョン情報が表示されば、無事、インストール完了です。<br><br> | ||
===Open MPI のインストール=== | ===Open MPI のインストール=== | ||
行12: | 行23: | ||
2016/04/13日現在、openmpi-1.10.21が最新版です。<br> | 2016/04/13日現在、openmpi-1.10.21が最新版です。<br> | ||
Open MPIをインストールします。<br> | Open MPIをインストールします。<br> | ||
− | $cd openmpi-1.10.2 | + | $ cd openmpi-1.10.2 |
− | $./configure --prefix=/usr/local/openmpi-1.10-2 | + | $ ./configure --prefix=/usr/local/openmpi-1.10-2 |
− | $make && make check && sudo make install | + | $ make && make check && sudo make install |
次に、環境設定を行います。<br> | 次に、環境設定を行います。<br> | ||
行23: | 行34: | ||
export MAC_OSX=1 ・・・この行は、次のRelionインストールのため | export MAC_OSX=1 ・・・この行は、次のRelionインストールのため | ||
Open MPIが動くかどうか、テストします。 | Open MPIが動くかどうか、テストします。 | ||
− | $cd examples | + | $ cd examples |
− | $make | + | $ make |
− | $mpirun -np 2 ./connectivity_c | + | $ mpirun -np 2 ./connectivity_c |
結果、 | 結果、 | ||
Connectivity test on 2 processes PASSED. | Connectivity test on 2 processes PASSED. | ||
行34: | 行45: | ||
名前、所属、メールアドレスの記入が必要です。<br> | 名前、所属、メールアドレスの記入が必要です。<br> | ||
2016/04/13日現在のバージョンは、relion-1.4です。<br> | 2016/04/13日現在のバージョンは、relion-1.4です。<br> | ||
− | ファイルを解凍します。<br><br> | + | ファイルを解凍します。<br> |
− | + | とにかく、インストールしてみましょう。 | |
− | + | ./INSTALL.sh -j 4 | |
− | + | "-j"オプションは、コンパイル時に並列に扱われるスレッド数を表しています。<br> | |
+ | エラーが出た場合は、下記の方法で解決してください。<br> | ||
+ | そして、もう一度インストールを試みましょう。<br> | ||
+ | ./INSTALL.sh -j 4 | ||
+ | エラーが出なければ、無事、インストール完了です。<br> | ||
+ | 最後に環境設定を行います。<br> | ||
+ | export LD_LIBRARY_PATH=/***/relion-1.4/lib:$LD_LIBRARY_PATH | ||
+ | export PATH=/***/relion-1.4/bin:$PATH | ||
+ | export RELION_QSUB_TEMPLATE="/***/relion-1.4/bin/qsub.csh" | ||
+ | "***"には、relion-1.4までのパスを書き込んでください。 | ||
+ | $relion | ||
+ | でRelionが起動するはずです。 | ||
+ | |||
+ | |||
+ | ====fltk-1.3.0のエラー==== | ||
+ | <B>その1</B> | ||
+ | fl_line_style.cxx:47:13 error: elaborated type refers to a typedef | ||
+ | static enum CGLineCap fl_quartz_line_cap_ = kCGLineCapButt; | ||
+ | のうよなエラーが出た場合、fl_line_style.cxx内を書き換えます。 <br> | ||
relion-1.4/external/fltk-1.3.0/src/の下にfl_line_style.cxxが存在するので、以下のように4つの行を編集します。<br> | relion-1.4/external/fltk-1.3.0/src/の下にfl_line_style.cxxが存在するので、以下のように4つの行を編集します。<br> | ||
-static enum CGLineCap fl_quartz_line_cap_ = kCGLineCapButt; | -static enum CGLineCap fl_quartz_line_cap_ = kCGLineCapButt; | ||
行54: | 行83: | ||
また、fltk-1.3.0.tar.gzを別の名前、例えば、fltk-1.3.0.tar.gz.orgなどに変更しておきます。<br> | また、fltk-1.3.0.tar.gzを別の名前、例えば、fltk-1.3.0.tar.gz.orgなどに変更しておきます。<br> | ||
(fltk-1.3.0.tar.gzの削除/名前変更をしないと、relionをインストールする度に、fl_line_style.cxxが前のファイルに書き換えられてしまいます。)<br><br> | (fltk-1.3.0.tar.gzの削除/名前変更をしないと、relionをインストールする度に、fl_line_style.cxxが前のファイルに書き換えられてしまいます。)<br><br> | ||
+ | <B>その2</B> | ||
+ | ./FL_Type.h:48:21: error: friend declaration specifying a default argument must be a definition | ||
+ | frind FL_Widget *make_type_browser(int,int,int,int,const char *l=0); | ||
+ | のうよなエラーが出た場合、Fl_Type.h内を書き換えます。 <br> | ||
+ | relion-1.4/external/fltk-1.3.0/fluid/の下にFl_Type.hが存在するので、以下のように1行を編集します。<br> | ||
+ | - frind FL_Widget *make_type_browser(int,int,int,int,const char *l=0); | ||
+ | + frind FL_Widget *make_type_browser(int,int,int,int,const char *); | ||
− | + | ====relion-1.4のエラー==== | |
− | + | src/mpi.cpp:98:30: error: cannot initialize a parameter of type 'int (*(*)())' with an lvalue of type 'int' | |
− | + | report_MPI_ERROR(result); | |
− | + | のうよなエラーが出た場合、mpi.h内を書き換えます。 <br> | |
− | + | relion-1.4/src/の下にmpi.hが存在するので、以下のように1行を編集します。<br> | |
− | + | - void report_MPI_ERROR(int errno); | |
− | + | + void report_MPI_ERROR(int _errno); | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + |
2016年4月19日 (火) 03:00時点における最新版
目次
XQuartz のインストール
"http://www.xquartz.org/"からファイルをダウンロードし、インストールします。
2016/04/13日現在のバージョンは、XQuartz-2.7.8です。
Apple/Command Line Tools のインストール
"https://developer.apple.com/downloads/"からファイルをダウンロードし、インストールします。
ダウンロードにはApple IDが必要です。
今回は、Mac OSX El Capitant 10.11.4のために、Command Line Tools (OS X 10.11) for Xcode 7.3を使用しました。
GFortranのインストール
Open MPIのインストールには、GFortranが必要です。
Macには、デフォルトではGFortranが入っていないようなので、入れる必要があります。
今回は、Homebrewを使い、gcc-4.9と一緒にgfortran-4.9をインストールします。
$ brew install homebrew/version/gcc49 --with-fortran
"gfortran"で実行できるように、リンクをはります。
$ sudo ln -sf /usr/local/bin/gfortran-4.9 /usr/bin/gfortran
インストールできているか確認します。
$ gfortran -v
バージョン情報が表示されば、無事、インストール完了です。
Open MPI のインストール
"https://www.open-mpi.org/software/ompi/v1.10/"からファイルをダウンロードし、解凍します。
2016/04/13日現在、openmpi-1.10.21が最新版です。
Open MPIをインストールします。
$ cd openmpi-1.10.2 $ ./configure --prefix=/usr/local/openmpi-1.10-2 $ make && make check && sudo make install
次に、環境設定を行います。
.bash_profileに以下を追加しておきましょう。
export PATH=/usr/local/openmpi-1.10.2/bin:$PATH export LD_RIBRARY_PATH=/usr/local/openmpi-1.10.2/lib:$LD_LIBRARY_PATH export MANPATH=/usr/local/openmpi-1.10.2/share/man:$MANPATH export MAC_OSX=1 ・・・この行は、次のRelionインストールのため
Open MPIが動くかどうか、テストします。
$ cd examples $ make $ mpirun -np 2 ./connectivity_c
結果、
Connectivity test on 2 processes PASSED.
と出力されるはずです。
Relion のインストール
"http://www2.mrc-lmb.cam.ac.uk/groups/scheres/download_relion.html"からファイルをダウンロードします。
名前、所属、メールアドレスの記入が必要です。
2016/04/13日現在のバージョンは、relion-1.4です。
ファイルを解凍します。
とにかく、インストールしてみましょう。
./INSTALL.sh -j 4
"-j"オプションは、コンパイル時に並列に扱われるスレッド数を表しています。
エラーが出た場合は、下記の方法で解決してください。
そして、もう一度インストールを試みましょう。
./INSTALL.sh -j 4
エラーが出なければ、無事、インストール完了です。
最後に環境設定を行います。
export LD_LIBRARY_PATH=/***/relion-1.4/lib:$LD_LIBRARY_PATH export PATH=/***/relion-1.4/bin:$PATH export RELION_QSUB_TEMPLATE="/***/relion-1.4/bin/qsub.csh"
"***"には、relion-1.4までのパスを書き込んでください。
$relion
でRelionが起動するはずです。
fltk-1.3.0のエラー
その1
fl_line_style.cxx:47:13 error: elaborated type refers to a typedef static enum CGLineCap fl_quartz_line_cap_ = kCGLineCapButt;
のうよなエラーが出た場合、fl_line_style.cxx内を書き換えます。
relion-1.4/external/fltk-1.3.0/src/の下にfl_line_style.cxxが存在するので、以下のように4つの行を編集します。
-static enum CGLineCap fl_quartz_line_cap_ = kCGLineCapButt; +static CGLineCap fl_quartz_line_cap_ = kCGLineCapButt;
-static enum CGLineJoin fl_quartz_line_join_ = kCGLineJoinMiter; +static CGLineJoin fl_quartz_line_join_ = kCGLineJoinMiter;
- static enum CGLineCap Cap[4] = { kCGLineCapButt, kCGLineCapButt, + static CGLineCap Cap[4] = { kCGLineCapButt, kCGLineCapButt,
- static enum CGLineJoin Join[4] = { kCGLineJoinMiter, kCGLineJoinMiter, + static CGLineJoin Join[4] = { kCGLineJoinMiter, kCGLineJoinMiter,
ファイル内の4つの"enum"を消すことになります。
また、fltk-1.3.0.tar.gzを別の名前、例えば、fltk-1.3.0.tar.gz.orgなどに変更しておきます。
(fltk-1.3.0.tar.gzの削除/名前変更をしないと、relionをインストールする度に、fl_line_style.cxxが前のファイルに書き換えられてしまいます。)
その2
./FL_Type.h:48:21: error: friend declaration specifying a default argument must be a definition frind FL_Widget *make_type_browser(int,int,int,int,const char *l=0);
のうよなエラーが出た場合、Fl_Type.h内を書き換えます。
relion-1.4/external/fltk-1.3.0/fluid/の下にFl_Type.hが存在するので、以下のように1行を編集します。
- frind FL_Widget *make_type_browser(int,int,int,int,const char *l=0); + frind FL_Widget *make_type_browser(int,int,int,int,const char *);
relion-1.4のエラー
src/mpi.cpp:98:30: error: cannot initialize a parameter of type 'int (*(*)())' with an lvalue of type 'int' report_MPI_ERROR(result);
のうよなエラーが出た場合、mpi.h内を書き換えます。
relion-1.4/src/の下にmpi.hが存在するので、以下のように1行を編集します。
- void report_MPI_ERROR(int errno); + void report_MPI_ERROR(int _errno);