Building ALPS from source/ja

From ALPS
Jump to: navigation, search

ALPS のビルドに必要なライブラリとツール

ALPS のビルドには ALPS のソース以外に次のライブラリとツールが必要になります.

  • CMake version 2.8 or higher as a build system.
  • Boost C++ Libraries version 1.47-1.50 (ALPS 2.1.1 はBoost 1.51 以上ではサポートされません)
  • HDF5 version 1.8.2 or higher

また,アプリケーションの多くは

  • BLAS and LAPACK libraries

を用います.

シミュレーション結果の解析用ツールなどには Python といくつかの Python パッケージが必要になります.

これらのライブラリやツールは自分でソースからビルドするか,OS が提供するパッケージマネージャを利用してインストールしてください.以下ではいろいろなプラットフォームでのパッケージのインストールについて,さらに詳しく説明します.

tebd コードには fortran コンパイラと --enable-fortran オプションを指定してビルドした HDF5 が必要になります.

MacOS X で MacPorts を使って必要なライブラリとツールをそろえる方法

  • なお,MacPorts でALPS そのものをインストールすることもできます.その際,必要な外部ライブラリもすべてインストールされます.
 $ sudo port install alps
  • Mac Ports をダウンロードしてインストールします
$ sudo port install cmake
  • HDF5 1.8.2 or higher をインストールします
$ sudo port install hdf5-18
  • Vistrails 抜きで Python の機能を使いたい場合,Python と scientific Python パッケージをインストールします:
$ sudo port install py27-numpy py27-scipy py27-matplotlib python27
$ sudo port select --set python python27

そうでなければ,単に ALPS Vistrails extensions をインストールしてください.

  • ALPS のソースとともにダウンロードしていないならば Boost C++ Libraries の バージョン 1.47.0 or higher のソースをダウンロードして展開してください.ビルドする必要はありません.
  • Xcode4 はMPI 実装を提供しません.ALPS でMPI 並列を使いたい場合は、自分で適当な実装をインストールしてください.
$ sudo port install openmpi

Ubuntu 10.04 Lucid Lynx 以降で必要なライブラリとツールをそろえる方法

1. Synaptic パッケージマネージャ を用いて以下のパッケージをインストールします.

build-essential cmake-curses-gui libhdf5-serial-dev libfftw3-dev
gfortran python-matplotlib python-scipy liblapack-dev xsltproc
python-dev

Synaptic の代わりにapt-get を使うこともできます.

apt-get install build-essential cmake-curses-gui libhdf5-serial-dev \
libfftw3-dev gfortran python-matplotlib python-scipy liblapack-dev \
xsltproc python-dev

2. Ubuntu 12.04 Precise Pangolin では,パッケージマネージャを使ってBoost 1.48 をインストールできます.

libboost1.48-all-dev

それ以前のバージョンの場合,ALPS with Boost をダウンロードしてインストールしてください.

3. Ubuntu 10.04 Lucid Lynx では,

libssl-dev

もインストールしてください.

4. Ubuntu では,Vistrails もパッケージマネージャを用いてインストール出来ます.これには管理者権限が必要になるので,もしも権限がない場合は,システム管理者に頼んでインストールしてもらってください.

python-qt4-gl python-qt4-sql python-vtk

CentOS 5.4 (RHEL 5.4 および他の5.* でも基本的には同様です)で必要なライブラリとツールをそろえる方法

1. 必要なコンパイラがすべてインストールされているか確かめてください.次の操作で必要なものはすべて(ライブラリなども含めて)インストールされます:

# yum install gcc-c++ gcc-gfortran

2. 評価ツールを使いたい場合,CentOS で提供されている 2.4 よりも新しいバージョンの Python をインストールする必要があります.ソースから自分でビルドするか,または非公式のRPM リポジトリからバイナリをインストールできます.C++ で書かれたアプリケーションをコンパイルしてシミュレーションを実行するだけなら Python は必要ありませんが,Python のヘッダだけは必要です(cmake にオプションとして -DALPS_BUILD_PYTHON=OFF を与えてください).

# yum install python-devel

3. CMake 2.8.0 or later and HDF5 1.8 or later は,パッケージマネージャの標準リポジトリに入っていないため,ソースからインストールする必要があります.スクリプトディレクトリにあるインストールスクリプトを使うことで,いくらか手順を省略できます.#外部ライブラリの自動ビルドスクリプトを使う

4. Boost ライブラリが必要です.Boost を含む ALPS パッケージを使うか,別途 Boost の新しいバージョンを入手してください.

5. もし BLAS/LAPACK がインストールされていなければ,インストールする必要があります.

# yum install blas-devel lapack-devel

Debian GNU/Linux (sid) で必要なライブラリとツールをそろえる方法

(2010/04/08) 外部ソースなしで ALPS のバイナリ(SSEを除く, #68)を作成できます!

  • build-essential パッケージを apt でインストールします.g++, make などがインストールされます.
$ sudo aptitude install build-essential
  • CMake を apt でインストールします.バージョン 2.8.2 がインストールされます.
$ sudo aptitude install cmake-curses-gui
  • HDF5 を apt でインストールします.バージョン 1.8.4-patch1 がインストールされます.
$ sudo aptitude install libhdf5-serial-dev
  • Boost C++ Libraries を apt でインストールします.バージョン 1.42.0 がインストールされます.ノート: libboost-all-dev をインストールしてください.libboost-dev では不十分です.
$ sudo aptitude install libboost-all-dev
  • FFTW を apt でインストールしてください.
$ sudo aptitude install libfftw3-dev
  • Python と必要なパッケージ h5py, numpy, scipy そして matplotlib を apt でインストールしてください.
$ sudo aptitude install python-h5py python-numpy python-matplotlib python-scipy
  • LAPACK/BLAS の自動認識のために gfortran を apt でインストールしてください.
$ sudo aptitude install gfortran

外部ライブラリの自動ビルドスクリプトを使う

私たちは必要となるライブラリをソースからビルドするためのシェルスクリプトを提供しています.

  • ALPS のソースを subversion のリポジトリから,例えば $HOME/src/alps2 へ,チェックアウトしてください.
  • 例えば,CMake をスクリプトを使って$HOME/tmp でビルドして,$HOME/opt にインストールするには次のようにします.
$ $HOME/src/alps2/script/cmake.sh $HOME/opt $HOME/tmp

ALPS のビルド

  • ALPS のソースコードをダウンロードします.
  • どこでもよいので自分が書き込み権限をもつところへビルドディレクトリを作成してそこへ行き,alps をダウンロードしたディレクトリと boost へのパスを cmake に与えて実行します.
$ cmake -D Boost_ROOT_DIR:PATH=/path/to/boost/directory /path/to/alps/directory

今の場合,インストールディレクトリは '/opt/alps' になります.違う場所へインストールしたいときは,CMAKE_INSTALL_PREFIX でパスを指定してください.ここで,インストールディレクトリで書き込み権限を持っていなければならないことに注意してください.'/opt/alps' への書き込み権限がない場合は必ずこのオプションを指定しなければなりません:

$ cmake -DCMAKE_INSTALL_PREFIX=/path/to/install/directory /path/to/alps/directory

もし 64bit 版 LAPACK をリンクしたいときは LAPACK_64_BIT オプションを ON にします.cmake の際に -D LAPACK_64_BIT=ON を加えてください.

  • CMake GUI や ccmake を使って CMake の設定を確認したり編集したりすることもできます.これを使って,cmake が自動で見つけられなかったヘッダやライブラリへのパスを設定することができます. cmake options に関連するオプションなどの記述があります.
$ ccmake .
  • ALPS のビルドとテスト
$ make
$ make test
$ make install

Vistrails と ALPS Vistrails パッケージをソースからビルドする

  • ALPS のビルドを行うディレクトリに移動してください.
  • ccmake でALPS_INSTALL_VISTRAILS_PACKAGE フラグを立てるか,改めてcmake しなおしてください.
$ cmake -DALPS_INSTALL_VISTRAILS_PACKAGES=ON
  • CMake のVISTRAILS_APP_DIR 変数をVistrails のあるディレクトリに設定してください.
  • ALPS をビルドしてください.ALPS がビルドされると共に,ALPS Vistrails 拡張がVistrails にインストールされます.

もし問題が起こったら...

古いVistrails を既にインストールしていた場合,~/.vistrails にある古い設定ファイルが問題を引き起こすことがあります.その場合は,リネームしたり消したりしてからやり直してください.

MacOS X でMacPorts を使ってALPS をインストールする

MacPorts にはALPS のパッケージが用意されています。 MacPorts を使うと、必要なライブラリが全てインストールされ、ALPS がビルドされます.

  1. MacPort をインストールしてください.
  2. ターミナルで # sudo port install alps としてください.

ビルドのヒント

ハイパフォーマンスコンピュータで使用する際のノート

HPC マシン上ではALPS をビルドするために最適なライブラリの組み合わせや設定方法が非自明なことがしばしばあります。 そこで私たちはこれまでに ALPS のインストールに成功したマシンで,セットアップの難しいものについて設定を公開しています.詳しくは こちらへ

Unix サーバ

Unix サーバで、/usr 以下への書き込み権限を持っていない場合は、 HDF5 やCmake をデフォルト設定でインストール出来ません。 この節では、書き込み権限がホームディレクトリ(~/)以下にしか無い場合に ALPS 2.0 をインストールするやり方の例を示します。

On Unix servers you often do not have access to the root directory, and you cannot use the default directory to install HDF5 and Cmake. Here is an example on how to install Alps 2.0 on a server in which you have writing access only to your home directory (~/)

1. HDF5 をダウンロードして、~/opt にインストールします。

2. Cmake をダウンロードして、~/cmake にインストールします。

3. ALPS のソースコードをダウンロード・展開します。適当なビルド用のディレクトリを作ってそこに移り、以下のようにcmake を実行してください(ディレクトリ名は適宜変更してください)

> ~/cmake/bin/cmake  -D BLAS_LIBRARY=/usr/lib64/libblas.so.3.0.3 
 -D LAPACK_LIBRARY=/usr/lib64/liblapack.so.3.0.3 -D CMAKE_INSTALL_PREFIX=$HOME/ALPS 
 -D LAPACK_64_BIT=ON  -D HDF5_LIBRARIES=~/opt/lib/libhdf5.so.6 
 -D HDF5_INCLUDE_DIR=~/opt/include/ ~/alps-2.0.0b1-r4556-src-with-boost/alps/

4. ~/.bashrc ファイルに以下の行を追加してください。

 export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$HOME/opt/lib

高度なビルド方法

高度なビルド方法については開発者 Wiki で情報が得られます.

もし,非標準の場所にインストールをした Python を使って ALPS の Python 拡張機能 をビルドしたい場合は,CMake の PYTHON_INTERPRETER 変数に,その非標準の Python インタープリターへのパスを設定してください