Install The Hdf5 Library

It is highly recommended that you use a pre-built version of h5py, either from aPython Distribution, an OS-specific package manager, or a pre-built wheel fromPyPI.

Install The Hdf5 LibraryLibrary

.HDF5 library version mismatched error. The HDF5 header files used to compile this application do not match the version used by the HDF5 library to which this application is linked. Data corruption or segmentation faults may occur if the application continues. They can be found in the bin folder of the binary distribution (default installation directory C:Program FilesHDF GroupHDF51.8.9bin and must be present in a directory that is part of your PATH environment variable. Obtain copies of of the source code and build your own binaries. HDF5 library source code HDF5DotNet source and examples. Open Initializes the HDF5 library close Flushes all data to disk and clean up resources dontAtExit Instructs HDF5 C library not to install atexit clean up routine; this is helpful when having global objects in the application because the clean up routine might be executed before the global destructors and prematurely close any needed HDF5. Apr 20, 2021 Please login to download. Windows Note: The HDF Group uses an installer program to install the HDF5 libraries, header and support files on Windows. This installer is digitally signed by The HDF Group. Please be aware that the installer requires that the user have permission to install files on the target computer. Installing from source on Windows is a much more difficult prospect than installing from source on other OSs, as not only are you likely to need to compile HDF5 from source, everything must be built with the correct version of Visual Studio. Additional patches are also needed to HDF5 to get HDF5 and Python to work together.

Install The Hdf5 Library Version

Be aware however that most pre-built versions lack MPI support, and that theyare built against a specific version of HDF5. If you require MPI support, ornewer HDF5 features, you will need to build from source.

After installing h5py, you should run the tests to be sure that everything wasinstalled correctly. This can be done in the python interpreter via:

Pre-built installation (recommended)¶

Pre-build h5py can be installed via many Python Distributions, OS-specificpackage managers, or via h5py wheels.

Python Distributions¶

If you do not already use a Python Distribution, we recommend eitherAnaconda/MinicondaorEnthought Canopy, both of whichsupport most versions of Microsoft Windows, OSX/MacOS, and a variety of LinuxDistributions. Installation of h5py can be done on the command line via:

for Anaconda/MiniConda, and via:

for Canopy.

Wheels¶

If you have an existing Python installation (e.g. a python.org download,or one that comes with your OS), then on Windows, MacOS/OSX, andLinux on Intel computers, pre-built h5py wheels can be installed via pip fromPyPI:

Additionally, for Windows users, Chris Gohlke provides third-party wheelswhich use Intel’s MKL.

OS-Specific Package Managers¶

On OSX/MacOS, h5py can be installed via Homebrew,Macports, or Fink.

Install The Hdf5 Library

The current state of h5py in various Linux Distributions can be seen athttps://pkgs.org/download/python-h5py, and can be installed via the packagemanager.

As far as the h5py developers know, none of the Windows package managers (e.g.Chocolatey, nuget)have h5py included, however they may assist in installing h5py’s requirementswhen building from source.

Source installation¶

To install h5py from source, you need:

  • A supported Python version with development headers
  • HDF5 1.8.4 or newer with development headers
  • A C compiler

On Unix platforms, you also need pkg-config unless you explicitly specifya path for HDF5 as described in Custom installation.

There are notes below on installing HDF5, Python and a C compiler on differentplatforms.

Quicktime app. Building h5py also requires several Python packages, but in most cases pip willautomatically install these in a build environment for you, so you don’t need todeal with them manually. See Development installation for a list.

Install Hdf5 Library Linux

The actual installation of h5py should be done via:

or, from a tarball or git checkout:

Development installation¶

When modifying h5py, you often want to reinstall it quickly to test your changes.To benefit from caching and use NumPy & Cython from your existing Pythonenvironment, run: The jdk dmg file jdk-9.minor.secruity.patch-macosx-x64.dmg.

For convenience, these commands are also in a script dev-install.sh in theh5py git repository.

Install Hdf5 Library Windows

This skips setting up a build environment, so you shouldhave already installed Cython, NumPy, pkgconfig (a Python interface topkg-config) and mpi4py (if you want MPI integration - see Building against Parallel HDF5).See setup.py for minimum versions.

This will normally rebuild Cython files automatically when they change, butsometimes it may be necessary to force a full rebuild. The easiest way toachieve this is to discard everything but the code committed to git. In the rootof your git checkout, run:

Then build h5py again as above.

Install

Source installation on OSX/MacOS¶

HDF5 and Python are most likely in your package manager (e.g. Homebrew,Macports, or Fink).Be sure to install the development headers, as sometimes they are not includedin the main package.

XCode comes with a C compiler (clang), and your package manager will likely haveother C compilers for you to install.

Install the hdf5 library version

Source installation on Linux/Other Unix¶

HDF5 and Python are most likely in your package manager. A C compiler almostdefinitely is, usually there is some kind of metapackage to install thedefault build tools, e.g. build-essential, which should be sufficient for ourneeds. Make sure that that you have the development headers, as they areusually not installed by default. They can usually be found in python-dev orsimilar and libhdf5-dev or similar.

Source installation on Windows¶

Installing from source on Windows is a much more difficult prospect thaninstalling from source on other OSs, as not only are you likely to need tocompile HDF5 from source, everything must be built with the correct version ofVisual Studio. Additional patches are also needed to HDF5 to get HDF5 and Pythonto work together.

We recommend examining the appveyor build scripts, and using those to build andinstall HDF5 and h5py.

Custom installation¶

Important

Remember that pip installs wheels by default.To perform a custom installation with pip, you should use:

or build from a git checkout or downloaded tarball to avoid gettinga pre-built version of h5py.

You can specify build options for h5py as environment variables when you buildit from source:

The supported build options are:

  • To specify where to find HDF5, use one of these options:
    • HDF5_LIBDIR and HDF5_INCLUDEDIR: the directory containing thecompiled HDF5 libraries and the directory containing the C header files,respectively.
    • HDF5_DIR: a shortcut for common installations, a directory with liband include subdirectories containing compiled libraries and C headers.
    • HDF5_PKGCONFIG_NAME: A name to query pkg-config for.If none of these options are specified, h5py will query pkg-config bydefault for hdf5, or hdf5-openmpi if building with MPI support.
  • HDF5_MPI=ON to build with MPI integration - see Building against Parallel HDF5.
  • HDF5_VERSION to force a specified HDF5 version. In most cases, you don’tneed to set this; the version number will be detected from the HDF5 library.
  • H5PY_SYSTEM_LZF=1 to build the bundled LZF compression filter(see Filter pipeline) against an external LZF library, rather thanusing the bundled LZF C code.

Building against Parallel HDF5¶

Install Hdf5 Library

If you just want to build with mpicc, and don’t care about using ParallelHDF5 features in h5py itself:

If you want access to the full Parallel HDF5 feature set in h5py(Parallel HDF5), you will further have to build in MPI mode. This can be doneby setting the HDF5_MPI environment variable:

You will need a shared-library build of Parallel HDF5 as well, i.e. built with./configure--enable-shared--enable-parallel.

Comments are closed.