2016-10-27 18 views
0

ファイルの1つに行use HDF5で始まるFortranプログラムがあります。このプログラムは以前に特定のクラスター上でコンパイルおよび実行されていました。今、特定の場所に既にhdf5がインストールされている別のクラスタでプログラムをコンパイルしようとしています。HDF5のコンパイル済みモジュールを開く際にエラーが発生する

私は、コンパイラがhdf5インストールディレクトリの場所を理解できないという問題があると想定しています。 LD_LIBRARY_PATHでエクスポートしてhdf5の位置を指定しようとしました。それでも動作しません。誰かが私が間違っていることを理解するのを助けることができます

コンパイラフラグには、-lhdf5_fortran-lhdf5も含まれます。

更新:コンパイル時のエラーリストは長いです。しかし、その始まりは、次のようになります。

lbe_io_hdf5.F90(7): error #7002: Error in opening the compiled module file. Check INCLUDE paths. [HDF5] 
    use HDF5 
------^ 
lbe_io_hdf5.F90(82): error #6683: A kind type parameter must be a compile-time constant. [HID_T] 
    integer(hid_t) :: file_id  ! File identifier 
+0

最初にやっていることを教えてください。それ以外の場合、あなたは間違って何をしているのか本当に分かりません。 –

+0

**質問には「*動作しません」と書かれています。何が起こるのですか?エラー?間違った結果?それは何かを印刷しますか?具体的にする。 –

+0

私はコンパイルログを追加しました。 –

答えて

0

HDF5は、Fortranのコンパイララッパーh5fcが付属しています。

h5fc -o my_program my_program.f90 

別々のコンパイルとリンクの場合:単一のプログラムファイルの場合は、あなたが

h5fc -show 

によって与えられたフラグをチェックし、直接コンパイラを呼び出したい場合は

h5fc -c file1.f90 
h5fc -c my_program.f90 
h5fc -o my_program file1.o my_program.o 

がある場合no h5fcコマンドは、Fortran対応のHDF5がインストールされていないことを意味します。

関連する問題