mirror of
https://github.com/HDFGroup/hdf5.git
synced 2026-09-25 04:09:44 +03:00
140 lines
4.3 KiB
Plaintext
140 lines
4.3 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 can be built with CMake, see the INSTALL_CMake.txt file for more
|
|
guidance.
|
|
|
|
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/
|