Fiber Bundle HDF5 - Getting Started (last updated 4. Sep 2023)
Basic Installation under Windows - MSYS2
As of now, Windows MSYS2 is the most used development platform. Both F5 and HDF5 are inherently cross-platform and can run under any OS with any build environment, but MSYS2 is supported best as of now. To install it, follow the following steps:
- Go to https://www.msys2.org/
- Download MSYS2 installer
- Install MSYS2
- Open A command line window will appear, similar to the command prompt of Windows. It is not identical however, as this one will support the full MSYS2 environment and is based on the Unix bash. It is recommendable to pin this app to the taskbar for future usuage. Make sure to not confused it with another .exe in the same directory.
- Update the MSYS2 distribution
- Install the GCC compiler
pacman -S mingw-w64-x86_64-gcc
- Install the development tools, which conveniently come with QT
pacman -S mingw-w64-x86_64-qt-creator
- Install the openssl library, which is used by the (optional) networking part of HDF5:
- Install SVN (a source code version control similar to GIT, but easier, with better support for modular checkout) Either via Or get Tortoise SVN, which integrates nicely into Windows, download from https://sourceforge.net/projects/tortoisesvn/ Here, also install the command line tools, but do not use the pacman version at the same time. To use the Tortoise SVN command line tools in MSYS, it is recommended to define the following alias
alias svn='C:/Program\ Files/TortoiseSVN/bin/svn.exe'
. This setting can be placed in your $HOME/.bashrc file.
Getting the HDF5 / F5 source code and compile
Open the MINGW64 command line shell and do SVN checkout of the predefined bundle:
This will retrieve the bundled source code of the F5 library together with a version of HDF5. It will be placed into a subdirectory F5 . Alternatively, use Tortoise SVN in the Windows explorer to do the same. Check it out into
to place it into the location where the MSYS2 shell operates.
After checkout, change into the respective folder and compile:
If you have a powerful machine, then instead of "-j4" a higher number can be used. The number should match the number of available processors on your computer for parallel compilation.
Building the documentation
If you want these help pages on your computer, install doxygen and run it in the F5 folder:
Then, open the file
using the webbrowser of your choice.
Running examples
A pretty simple first example is computing and outputting a scalar field (i.e. a field with a single floating point number) on a 3D volume. Run it by:
cd examples/ScalarSimple
mingw32-make
mingw32-make exec
Other Examples
It is recommended to run the respective examples and inspect the source code in the respective folders to learn how to write a particular dataset:
- scalar field volumetric data in 3D
- A time-dependent Point Cloud
- 3D vector field
- Time-dependent lines
- Triangular Mesh The examples are supposed to give starting points, based on simple cases. For simple cases, writing them to F5 files is supposed to be simple. The more complex a dataset gets, the more it will be required to delve deeper into more low-level functions, and to eventually reproduce by yourself what the high-level functions do - but this time with full flexibility of extending beyond the predefined high-level functions.
Collection of converters and tools
Various converters and tools have been written already and are available via the same SVN repository. To retrieve them, do
mingw32-make converters tools
in the checked out toplevel folder. This will create the respective subdirectories with some programs that may help on providing guidance with writing your own converters and / or tools.