HDF5のインストール

各種インストールに際して

sudo make install

などと表記しているが,パス(prefixの指定場所)やユーザー(root)によってはsudoが不要なので,都合に応じて変更することに注意されたい.

zlib,szipのインストール

zlibのページのリンクから,それぞれ zlibのソースをダウンロードできる.
ダウンロード後は解凍してインストールを実行する.
tar.gz形式をダウンロードしたとすれば,

tar -zxf zlib-1.2.11.tar.gz
cd -zxf zlib-1.2.11
./configure --prefix=/usr
make
sudo make install

szipについても同様に行う.ソースはSZIP Compression in HDF Productsの "SZIP Source Code" から.
prefixは一応 /usr と明示しておく.

tar -zxf szip-2.1.1.tar.gz 
cd szip-2.1.1/
./configure --prefix=/usr
make && sudo make install # &&で繋いでも良い

HDF5のインストール

The HDF5 Groupのページから,HDF5のソースをダウンロードできる.
configureをする前に,pthread.h, libthread.a, libthread.soがあるか確認する.

locate pthread.h
 /usr/include/pthread.h
locate libpthread.a
 /usr/lib/x86_64-linux-gnu/
locate libpthread.so
 /usr/lib/x86_64-linux-gnu/

いつも通りの解凍後,上記のパスを確認し,configureで指定する.下記の通り長い.

tar -zxf hdf5-1.10.4
cd hdf5-1.10.4
./configure --prefix=/usr/local/hdf5-1.10.4 \
            --enable-fortran --enable-cxx \
            --with-szlib=/usr  \
            --enable-threadsafe \
            --with-pthread=/usr/include/,/usr/lib/x86_64-linux-gnu/ \
            --enable-hl --enable-shared --enable-unsupported

szlibのところは /usr でインストールしたなら指定しなくでもおそらく問題ない.
バージョンごとに分ける必要性を感じなければ,hdf5のprefixも /usr/local などで良いかも(CCとFCに注意する).
makeとmake installで完了.コンパイル中warningがたくさん出たけど無視した.

make
make check # 結構長い時間がかかる
sudo make install

エラー,ハマったこと

ifort 18.0.1と,HDF-1.10.1では,makeのコンパイル中にエラーが発生した.内容はここに書いてあることとほぼ同じだった.エラーメッセージは

Multiple objects from the same EQUIVALENCE set may not appear in a COMMON block.

commonブロックとequivalenceの問題らしい.
わからないままだったので,バージョンを下げてHDF5-1.8.20でコンパイルすることにした.問題なくインストールできた.

sudo makeかrootでmakeをする時は,ifortがrootのパスにも入っているか確認する.


Front page   Edit Diff Attach Copy Rename Reload   New List of pages Search Recent changes   Help   RSS of recent changes
Last-modified: 2018-12-13 (Thu) 03:32:15 (35d)