我有一个Fortran程序,其中一个文件以行use HDF5
开头。该程序先前已编译并在特定群集上运行。现在,我正在尝试在不同的群集中编译该程序,该群集已在特定位置安装hdf5
。
我认为问题在于编译器无法理解hdf5
安装目录的位置。我也尝试通过hdf5
导出来指定LD_LIBRARY_PATH
位置。它仍然无效。有人能帮我弄清楚我做错了吗?
编译器标志还包括-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)
HDF5附带了Fortran的编译器包装器h5fc
。对于单个程序文件:
h5fc -o my_program my_program.f90
对于单独的编译和链接:
h5fc -c file1.f90
h5fc -c my_program.f90
h5fc -o my_program file1.o my_program.o
如果要直接调用编译器,请检查
给出的标志h5fc -show
如果没有h5fc
命令,则表示您没有安装Fortran的HDF5。