---
title: 安装HDF5
description: "- HDF5系列组件源码包中若“configure”文件指定GNU使用O3优化，则需在执行  1"
url: https://www.hikunpeng.com/document/detail/zh/kunpenghpcs/hpcindapp/prtg-osc/openmind_kunpengnceplibs_02_0007.html
sourcePath: /source/zh/kunpenghpcs/hpcindapp/prtg-osc/openmind_kunpengnceplibs_02_0007.html
indexId: 559ad12a7c714f369d15d20c9d70ac87c53ae2c771f606a5a8cb0be7a6a3026579
---
# 安装HDF5

- HDF5系列组件源码包中若“configure”文件指定GNU使用O3优化，则需在执行  1
之前添加以下优化选项，详见  4
。

```
export optflags="-O3"
export ldflags="-Wl,--build-id"
export threads=$(nproc)
```


- 若“configure”文件指定非GNU不使用优化，则无需添加优化选项。


#### 操作步骤

1. 使用PuTTY工具，以root用户登录服务器。
2. 执行以下命令解压HDF5安装包。

```
tar -zxvf hdf5-1.10.5.tar.gz
```


3. 执行以下命令进入解压后的目录。

```
cd hdf5-1.10.5
```


4. 执行以下命令进行编译配置。

```
CC=mpicc CFLAGS="$optflags -fPIC -Wno-incompatible-pointer-types-discards-qualifiers -Wno-non-literal-null-conversion" FC=mpif90 FCFLAGS="$optflags -fPIC" FFLAGS="$optflags -fPIC" LDFLAGS="$ldflags" CXX=mpicxx ./configure --prefix=
/path/to/HDF5
--enable-shared --enable-static --enable-fortran --enable-parallel --enable-optimization=high
```


5. 执行以下命令合入patch包。

```
patch -p1 < libtool.patch
```


6. 新建并编辑“libtool.patch”文件。

  a. 新建“libtool.patch”文件。

```
vi libtool.patch
```


  b. 按“i”进入编辑模式，添加如下内容。

```
diff -ruN hdf5-1.10.1/libtool hdf5-1.10.1-new/libtool
--- hdf5-1.10.1/libtool 2019-12-02 20:02:56.270676503 +0000
+++ hdf5-1.10.1-new/libtool 2019-12-02 20:03:05.062708034 +0000
@@ -11832,7 +11832,7 @@
pic_flag=""
# How to pass a linker flag through the compiler.
-wl=""
+wl="-Wl,"
# Compiler flag to prevent dynamic linking.
link_static_flag=""
```


  c. 按“Esc”键，输入:wq!，按“Enter”保存并退出编辑。
7. 执行以下命令进行编译安装。

```
make -j$threads
```

```
make install
```


8. 执行以下命令验证是否安装成功。

```
ls
/path/to/HDF5
/lib
ls
/path/to/HDF5
/bin
```


  回显显示如下信息，则表示安装成功。

9. 执行以下命令加载环境变量。

```
export PATH=
/path/to/HDF5
/
bin:$PATH
export LD_LIBRARY_PATH=
/path/to/HDF5
/lib:$LD_LIBRARY_PATH
```
