#hdf5

sys hdf5-sys

Native bindings to the HDF5 library

9 releases

0.8.1 Nov 21, 2021
0.7.1 Jan 27, 2021
0.7.0 Aug 9, 2020
0.6.1 Apr 12, 2020
0.2.5 Jul 28, 2015

#4 in #hdf5

Download history 238/week @ 2021-09-29 220/week @ 2021-10-06 200/week @ 2021-10-13 296/week @ 2021-10-20 614/week @ 2021-10-27 504/week @ 2021-11-03 407/week @ 2021-11-10 432/week @ 2021-11-17 273/week @ 2021-11-24 587/week @ 2021-12-01 515/week @ 2021-12-08 383/week @ 2021-12-15 171/week @ 2021-12-22 230/week @ 2021-12-29 427/week @ 2022-01-05 402/week @ 2022-01-12

1,298 downloads per month
Used in 38 crates (11 directly)

MIT/Apache

3.5MB
51K SLoC

C 44K SLoC // 0.4% comments Rust 5K SLoC // 0.0% comments FORTRAN Modern 1.5K SLoC // 0.1% comments Automake 200 SLoC // 0.5% comments C++ 180 SLoC // 0.3% comments Happy 90 SLoC Shell 40 SLoC // 0.4% comments

hdf5-sys

This crate provides direct bindings to the HDF5 C library and allows to build the library from C sources if need be, so it can be linked in statically.

Static linking

This crate supports linking to a static build of HDF5. The HDF5 C library is built via the hdf5-src crate which is then linked in when the static feature is set. See below for a list of supported options for static builds.

As of the time of writing, the version of the HDF5 library that is built is 1.10.5, but it may be incremented later.

Crate features

Features propagated upwards will be detected based on features available for the chosen library. The library selected can always be overridden by specifying the environment variable HDF5_DIR.

General features:

  • mpio: enable MPI support (not supported in static mode)
  • static: build HDF5 C library from source (see below for a list of options)

These options are mutually exclusive. This combination could be supported in the future, see issue #101.

The following features affect the HDF5 build options when compiling it from source:

  • hl: enable high-level features (which we don't provide bindings for)
  • threadsafe: build a thread-safe version of the library
  • zlib: enable zlib filter support
  • deprecated: include deprecated symbols (which we don't provide bindings for)

Note: HDF5 library has a separate BSD-style license.

Dependencies

qa