ABOUT HDF4.0 Beta 1
July 25, 1995
CONTENTS
1. New features in the HDF4.0 Beta 1 release
2. Bugs fixed and known problems
3. Platforms tested
4. Installation of HDF4.0 Beta 1 on WindowsNT/95
5. Known problems in compilation, testing and
installation of HDF4.0b1
6. Installing without FORTRAN support
1. New features in HDF4.0 Beta 1 release
o Auto configuration
It is now possible to automatically configure and build
both the HDF library and netCDF library with one command.
See the README and the INSTALL files at the top level of
HDF4.0beta1 for detailed instructions on configuring and
installation.
o Multi-file Annotation Interface (ANxxx)
The multi-file annotation Interface is for accessing
file labels and descriptions, and object labels and
descriptions. It allows users to keep open more than
one file at a time, and to access more than one
annotation at a time. It also allows multiple labels
and multiple descriptions to be applied to an HDF object
or HDF file.
A draft of the documentation for this interface is in
./mf_anno.txt.
o Multi-file Raster Image (GRxxx) interface
The new Generic Raster (GR) interface provides a set of
functions for manipulating raster images of all kinds.
This interface allows users to keep open more than one
file at a time, and to "attach" more than one raster
image at a time. It supports a general framework
for attributes within the RIS data-model, allowing
'name = value' style metadata. It allows access to
subsamples and subsets of images. HDF4.0beta1 includes
a C interface only. The Fortran interface will be available
in the next release.
A draft of the documentation for this interface is in
./mf_ris.txt.
o New Compression Algorithms and interface
A new low-level compression interface has been added to
HDF which allows any data-object to be compressed
using a variety of algorithms. Currently only two
compression algorithms are supported: Run-Length
Encoding (RLE) and adaptive Huffman.
A draft of the documentation for this interface is in
./compression.txt
o JPEG Group v5b library
HDF Version 4.0 libraries now use v5 of the Independent
JPEG Group (IJG) JPEG file access library. For more details
about JPEG library see
./JPEG_v5b.txt
The JPEG library will need to be linked with a user's
applications whether they are compressed with JPEG or not.
For example on a SUN SPARC, if the .h files are in the
directory "incdir", and all libraries are in "libdir,"
the following command should be used to compile a
C program "myprog.c":
cc -DSUN -DHDF -Iincdir myprog.c libdir/libnetcdf.a \
libdir/libdf.a /libdir/libjpeg.a -o myprog
or
cc -DSUN -DHDF -Iincdir myprog.c -L libdir -lnetcdf \
-ldf -ljpeg -o myprog
Note that the order is important: libnetcdf.a must occur first,
then libdf.a, and then libjpeg.a.
For FORTRAN programs, use command line:
f77 -o myprogf myprogf.f libdir/libnetcdf.a \
libdir/libdf.a libdir/libjpeg.a
or
f77 -o myprogf myprogf.f -L libdir -lnetcdf -ldf -ljpeg
Note that the order is important: libnetcdf.a, then libdf.a
and then libjpeg.a.
o Compression for HDF SDS (not completely working)
Work is almost complete on the addition of two
new compression functions to the SD interface.
One function, which still has some known bugs, will
allow users to compress a scientific dataset using
any of several compression methods. Initially two
schemes, RLE encoding and an adaptive Huffman
compression algorithms, will be available.
A second function is available for storing a scientific
dataset using integers whose size is any number of bits
between 1 and 32 (instead of being restricted to 8, 16
or 32-bit sizes).
A draft of the documentation for these functions is in
./comp_SDS.txt
o External Path Handling
New functions have been added to allow applications to
specify directories to create or search for external
files. More explanation can be found in:
./external_path.txt.
o Parallel I/O for the CM5
An extension using the parallel I/O facilities on a CM5
has been added to the SDS interface. Initial tests have
resulted in about 25 MBytes/second I/O throughput using the
SDA (Scalable Disk Array) file system. The library
provides interfaces for both C* and CMF programming
languages. See:
./parallel_CM5.txt for details.
o HDF dumper
Hdp is a command line utility designed for quick
display of contents and data of HDF3.3 objects, RIS,
SDS, Vdata, and Vgroup. It can list the contents of
hdf files at various levels with different details.
It can also dump the data of one or more specific
objects in the file. See:
./hdp.txt for details.
Currently hdp works on SunOS and LINUX only.
2. Bugs fixed and known problems
Several bugs or problems, such as failure in setting
and getting scales for unlimited dimensions, missing
Fortran version of VSQxxxx functions, failure in
defining more than 36 fields in Vdatas, etc. were
fixed in this beta release. For more details about
fixed and un-fixed bugs and problems please see:
./bug_fixed.txt.
3. HDF4.0 Beta 1 has been tested on the following systems:
SunOS 4.1.3, SunOS 5.3 (Solaris 2.3), Linux, SGI/IRIX5.3,
SGI Power Challenge/IRIX6.0 (32-bit mode only), HP/UX 9.01,
IBM RS6000/AIX (C only), C3880/ConvexOS,11.0, CM5, Cray C90,
DEC alpha/OSF (C only), DecStation/MIPSEL (C only), Windows NT,
Free BSD 2.0, and Convex Exemplar/HPUX. See the INSTALL
file at the top level of HDF4.0b1 for more details.
4. Installing HDF4.0 Beta 1 on Windows NT and Windows 95
Since Windows NT, Windows '95 (Chicago) and Windows 3.1
(with the Win 32s extensions) all are designed to run
the same 32-bit code, we have decided to support only
32-bit libraries and code on the MS-Windows platform.
To build the HDF, JPEG and netCDF libraries and utilities,
follow the instructions listed in:
./install_winNT.txt.
5. Known problems in compilation,testing and installation
of HDF4.0b1:
. On SunOS, tsdmmsf.f in hdf/test/fortest fails
. On C90, mfhdf/fortran test doesn't configure correctly.
The adaptive Huffman algorithm does not work right
either. Due to this problem, when running
hdf/test/testhdf the test module comp prints out
error messages.
. On DecStation/MIPSEL, ncdump gives a segmentation fault.
. The Fortran interface has not been tested on IBM RS6000,
DecStation/MIPSEL, and Dec Alpha/OSF because a Fortran
compiler is not available on those machines in our group.
. If the external element test in hdf/test/testhdf fails
and there is no subdirectory "testdir" in hdf/test/,
create one via "mkdir" and run the test again. (The
"testdir" should have been created by "make". But
the "make" in some old systems does not support the
creation commands.)
. A bug was found in the "mfhdf.h" file late in the testing
stage. The error occured in the CM5 parallel I/O
extension only. The fix is not included in the source
release, but it is avalable in the binary release for
the CM5 version. Please retrieve the fix there.
. SDsetcompress does not work correctly.
. Hdp now works on SunOS and LINUX only. Commands dumpsds,
dumpvd and dumpvg have different problems on other platforms.
See mfhdf/dumper/README for more details.
6. Installing without FORTRAN support:
. On UNIX systems without a FORTRAN system installed,
the config/mh- will need to have the 'FC' macros
defined to "NONE" for correct configuration and the
target "allnofortran" should be used to build the
distribution, instead of the target "all".