Linux系统:
1.下载hdf5-1.8.15.tar.gz
https://support.hdfgroup.org/ftp/HDF5/releases/hdf5-1.8/hdf5-1.8.15/src/
2. 解压缩:
直接用tar -zxvf报错,参考https://blog.csdn.net/huhang600/article/details/50274693的解决方法,如下,
gzip -d xxxx.tar.gz (对于.tar.gz文件的处理方式)
tar -xf xxxx.tar (对于.tar文件处理方式)
3. 运行如下命令:
$ ./configure --prefix=/usr/local/hdf5
$ make
$ make check # run test suite.
$ make install
$ make check-install # verify installation.
./configure --prefix=/usr/local/hdf5
./configure --prefix=/usr/local/hdf5 --enable-cxx
CC=mpicc ./configure --prefix=/usr/local/hdf5 --enable-parallel
在这里插入图片描述
make安装成功;
make check报错:
CC=mpicc ./configure --prefix=/usr/local/hdf5 --enable-parallel --enable-cxx --enable-unsupported(该项用于忽略parallel和cxx的冲突)
make后报错,找不到mpi.h
- 修改环境变量PATH
a. P A T H = " PATH=" PATH="PATH":/NEW_PATH (只对当前shell有效,关闭shell Path会还原为原来的path)
b. 在/etc/profile的最下面添加: export PATH=“ P A T H : / N E W P A T H " ( 针 对 所 有 用 户 , 所 有 s h e l l ) c . . b a s h r c 文 件 下 面 添 加 : e x p o r t P A T H = " PATH:/NEW_PATH" (针对所有用户,所有shell) c. .bashrc文件下面添加:export PATH=" PATH:/NEWPATH"(针对所有用户,所有shell)c..bashrc文件下面添加:exportPATH="PATH:/NEW_PATH”(针对当前用户)
d. .bash_profile在里面的PATH一行修改 添上需要的路径($HOME/.bash_profile是用户自用)
Windows系统:
依赖库安装:
VTK:博文参考,https://blog.csdn.net/weixin_44723106/article/details/102930039
win10+visual studio 2019 community+cmake gui+hdf5-1.8.16
参考文件:hdf5-1.8.16\release_docs\INSTALL_CMake.txt
- cmake生成sln文件;
- visual studio编译ALL_BUILD;
- visual studio编译INSTALL,报错:MSB3073: 命令“setlocal,解决参考博文:https://www.cnblogs.com/ZY-Dream/p/9955169.html (install)项目–>属性–>生成事件–>后期生成事件–>在生成中使用–>否;
- visual studio编译RUN_TESTS,测试通过All passed;
- 查看C:\Program Files\HDF_Group\HDF5\1.8.16已存在。
CGNS源代码安装:
- cmake生成sln文件;
- visual studio编译ALL_BUILD,(ALL_BUILD)项目–>属性–>生成事件–>后期生成事件–>在生成中使用–>否;
- visual studio编译INSTALL,报错:MSB3073: 命令“setlocal,解决参考博文:https://www.cnblogs.com/ZY-Dream/p/9955169.html (install)项目–>属性–>生成事件–>后期生成事件–>在生成中使用–>否;
- visual studio编译RUN_TESTS,测试通过All passed;
- 查看C:\Program Files (x86)\cgns\cgns-4.2-win64已存在。
Parallel hdf5-1.8.16安装
依赖库:MPI
测试MPI
6. 在VS配置MPI工程:https://blog.csdn.net/Jacamox/article/details/112563361,博文中的代码测试通过;
7. hdf5-1.8.16\release_docs\INSTALL_parallel.txt提示,需要检测是否支持MPI_IO来创建并行文件;错误:不包含mpio.h头文件,找不到gethostname(),疑似mpio.h在新版Open MPI中已经被集成,不需要单独编译安装;
9. 重复以上hdf5安装过程,cmake Configure时勾选HDF5_ENABLE_PARALLEL,取消勾选HDF5_BUILD_CPP_LIB;
10. visual studio编译INSTALL,报错:MSB3073: 命令“setlocal,解决参考博文:https://www.cnblogs.com/ZY-Dream/p/9955169.html,尝试以管理员身份运行visual studio,修改项目属性:(install)项目–>属性–>生成事件–>后期生成事件–>在生成中使用–>否;
11. visual studio编译RUN_TESTS,测试通过All passed;
12. 查看C:\Program Files\HDF_Group\HDF5\1.8.16已存在,将C:\Program Files\HDF_Group\HDF5\1.8.16\bin加入环境变量并重启电脑;
13. 运行palabos-v2.3.0\examples\codesByTopic\aneurysm_xdmf_hdf5_output时出现错误如下:
Error LNK2019 unresolved external symbol H5T_C_S1_g referenced,
A. 参考网页:https://github.com/conda-forge/hdf5-feedstock/issues/58,https://github.com/conda-forge/gdal-feedstock/issues/25,可知编译工程aneurysm_xdmf_hdf5_output时需要加入H5_BUILT_AS_DYNAMIC_LIB;
查看后发现aneurysm_xdmf_hdf5_output工程属性中已经有c/c++ -> preprocessor: H5_BUILT_AS_DYNAMIC_LIB=1,但是不知为何没有起作用。
B. 根据https://github.com/ContinuumIO/anaconda-issues/issues/811,修改HDF/1.8.16/include/H5pubconf.h文件,加入#define H5_BUILT_AS_DYNAMIC_LIB 1,编译成功。
14. 直接运行失败,问题指向无法找到stl文件。将showCases\aneurysm中的stl.tgz解压缩得到的stl文件拷贝到当前项目,运行成功。
15. HDF output部分运行错误如下: