mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-09-25 04:09:44 +03:00
FFM build requires Java 25, Jextract 25. Generates FFM bindings during configure. JNI is default when the requirements are not met or can be forced. Presets added for maven and FFM - JNI is default selection. Enhanced Maven options will work with either JNI or FFM New Workflows for testing and maven uploads. Extensive documentation changes for java.
140 lines
4.4 KiB
Plaintext
140 lines
4.4 KiB
Plaintext
************************************************************************
|
|
HDF5 Build and Install Instructions for Cygwin
|
|
************************************************************************
|
|
|
|
This document is an instruction on how to build, test and install HDF5 library
|
|
on Cygwin.
|
|
|
|
NOTE: HDF5 2.0 and later requires CMake for building. See INSTALL_CMake.txt
|
|
for complete build instructions using CMake Presets (recommended method).
|
|
|
|
Preconditions:
|
|
--------------
|
|
|
|
1. Cygwin 3.5.1 or higher Installed
|
|
|
|
To install the Cygwin net release, go to http://www.cygwin.com and
|
|
click on "setup-x86_64.exe" under the heading
|
|
"Current Cygwin DLL version". This will download a GUI
|
|
installer called setup-x86_64.exe which can be run to download a complete
|
|
Cygwin installation via the internet. Then follow the instructions
|
|
on each screen to install Cygwin.
|
|
|
|
Cygwin uses packages to manage installing various software. Users can
|
|
choose to install or uninstall certain packages by running setup.exe.
|
|
http://www.cygwin.com/packages/ provides detailed information about
|
|
Cygwin packages.
|
|
|
|
Most required dependencies can be satisfied by installing all packages in
|
|
the "Devel" category. However, please verify that you have installed all
|
|
packages listed below.
|
|
|
|
2. Compilers, Libraries and Utilities Installed
|
|
|
|
2.1 Compilers Supported
|
|
|
|
The following compilers are supported by HDF5 and included in the Cygwin
|
|
package system:
|
|
gcc, which includes:
|
|
gcc-core : C compiler
|
|
gcc-g++ : C++ compiler
|
|
gcc-fortran : Fortran compiler
|
|
|
|
|
|
2.1.1 Using Compilers Not Supported
|
|
|
|
By default the current configuration uses vendor compilers; to use
|
|
another compiler run the following commands before running
|
|
configure:
|
|
|
|
setenv CC "foo -flags"
|
|
setenv FC "fffoo -flags"
|
|
|
|
For example, if users want to use pgf90 as fortran compiler, then
|
|
|
|
setenv FC pgf90
|
|
|
|
See the configure help page (configure --help) for a list of
|
|
environment variables that have an affect on building the
|
|
library.
|
|
|
|
2.2 HDF5 External Library Dependencies
|
|
|
|
2.2.1 zlib
|
|
|
|
zlib-1.2.8 or later is supported and tested.
|
|
|
|
2.2.2 Szip
|
|
|
|
libaec-1.1.2 or later is supported and tested.
|
|
|
|
2.3 Additional Utilities
|
|
|
|
The following standard utilities are also required to build and test HDF5:
|
|
|
|
bison : yacc implementation
|
|
flex : flex utility
|
|
make : make utility
|
|
|
|
2.4 Alternate Build Process
|
|
|
|
Download the CMake package and follow the notes in the "INSTALL_CMake.txt"
|
|
file to build HDF5 with the CMake utilities.
|
|
|
|
|
|
|
|
Build, Test and Install HDF5 on Cygwin
|
|
--------------------------------------
|
|
|
|
1. Get HDF5 source code package
|
|
Users can download the HDF5 source code from the official GitHub repository
|
|
(https://github.com/HDFGroup/hdf5).
|
|
|
|
2. Unpacking the distribution
|
|
|
|
The HDF5 source code is distributed in a variety of formats which
|
|
can be unpacked with the following commands, each of which creates
|
|
an `hdf5-2.0.x' directory.
|
|
|
|
2.1 Non-compressed tar archive (*.tar)
|
|
|
|
$ tar xf hdf5-2.0.x.tar
|
|
|
|
2.2 Gzip'd tar archive (*.tar.gz)
|
|
|
|
$ gunzip < hdf5-2.0.x.tar.gz | tar xf -
|
|
|
|
2.3 Bzip'd tar archive (*.tar.bz2)
|
|
|
|
$ bunzip2 < hdf5-2.0.x.tar.bz2 | tar xf -
|
|
|
|
2. Setup Environment
|
|
|
|
In Cygwin, most compilers and setting are automatically detected during
|
|
the configure script. However, if you are building Fortran, we recommend
|
|
that you explicitly set the "FC" variable in your environment to use the
|
|
gfortran compiler. For example, issue the command:
|
|
|
|
$ export FC=gfortran
|
|
|
|
3. Follow build and test steps in the INSTALL_CMake.txt file.
|
|
|
|
4. Check installed HDF5 library
|
|
|
|
After step 6, go to your installation directory, there should be
|
|
three subdirectories: "bin" "include" and "lib".
|
|
|
|
5. Known Problems
|
|
|
|
cache_api tests may fail. This is a known issue with Cygwin.
|
|
|
|
"make check" fails when building shared lib files is enabled. The default
|
|
on Cygwin has been changed to disable shared. It can be enabled with
|
|
the BUILD_SHARED_LIBS configure option but is likely to fail "make check"
|
|
with GCC compilers.
|
|
|
|
-----------------------------------------------------------------------
|
|
|
|
HDF Forum: https://forum.hdfgroup.org/
|
|
HDF Helpdesk: https://help.hdfgroup.org/
|