Linux/HDF5/CGNS-从源代码编译HDF5和CGNS
CFD General Notation System (CGNS)是CFD软件中非常重要的数据格式,正在得到越来越广泛的应用,CGNS 提供了一个通用的可移植且可扩展的标准,用于存储和检索计算流体动力学 (CFD)的分析数据。 它由一个自由和开放软件。 它是自我描述的、独立于机器的、有据可查的,也是美国研究所航空航天 (AIAA)推荐标准。
由于CGNS依赖HDF5,因此在编译CGNS时需要先编译HDF5,并在编译CGNS时制定HDF5的路径。
1. HDF5
The HDF5® Library & File Format - The HDF Group
HDF5编译较为简单,只需要以下步骤:
mkdir build cd build cmake .. make -j make install
在“cmake ..”命令中需要注意指定HDF5的安装目录,默认是安装到系统位置,也可以自己指定位置,但是要记下自己指定的位置,稍后CGNS需要。
HDF5没有必需的依赖库,如果需要的话可以自行安装SZIP、ZLIB等库。
通常,以上命令执行完成后,HDF5就已经安装到了预定位置。如果没有cmake,也可以使用configure。
2. CGNS
在确保HDF5正确安装完成后,编译CGNS,同样步骤:
mkdir build
cd build
cmake .. -DCMAKE_PREFIX_PATH=/path/to/hdf5
make -j
make install
在"cmake .."命令中需要注意指定CGNS的安装目录,默认是安装到系统位置,也可以自己指定位置。“-DCMAKE_PREFIX_PATH”是为了指定刚刚HDF5的安装路径,路径正确的话会有如下输出:
-- HDF5 find comps: C;shared
-- HDF5 C libs:1 static: and shared:1
-- HDF5-1.14.3 found: INC=/path/to/hdf5/include TOOLS=/path/to/hdf5/bin HDF5_BUILD_SHARED_LIBS=YES
-- HDF5 link libs: hdf5-shared
否则就会提示:
Could NOT find HDF5 (missing: HDF5_DIR)
通常,以上命令执行完成后,CGNS也已经安装到了预定位置。如果没有cmake,也可以使用configure。