Installation

Dependencies

Fimex requires at least the following libraries to be installed for compilation:

c99/c++ compiler

libxml2 >= 2.5.0

boost library >= 1.33

proj-4 >= 4.4.9

udunits 1.12.x or >= 2.1.11

To configure the different file formats it requires:

NetCDF (netcdf-3 > 3.6)

Felt (libmi or libfelt (bundled)

grib_api (> 1.4)

Build

The installation follows the usual autoconf rules, see 'INSTALL' for extensive information. Since Fimex makes some floating-point calculations in large loops, it is advisable to switch on SIMD/SSE operations in your compiler. On a Xeon machine with a x386 machine and gcc, I use the following flags (those are default for x86-64) (see microbenchmark of sse for more information)

Since fimex 0.16, with included felt-c++ library:

CFLAGS='-O2 -mfpmath=sse -msse2' CXXFLAGS='-O2 -mfpmath=sse -msse2' ./configure --with-NetCDF-lib-dir=/usr/lib/netcdf-3 -with-NetCDF-include-dir=/usr/include/netcdf-3
make
make check
make install

Before fimex 0.16:

export milib_CFLAGS=-I/disk1/metno/local/include
export milib_LIBS='-L/disk1/metno/local/lib -lmic -lmi -lg2c'
CFLAGS='-O2 -mfpmath=sse -msse2' CXXFLAGS='-O2 -mfpmath=sse -msse2' ./configure --with-NetCDF-lib-dir=/usr/lib/netcdf-3 -with-NetCDF-include-dir=/usr/include/netcdf-3
make
make check
make install

In case of compilation against the netcdf4 library with hdf5 support, additional libraries needed by netcdf4 need to be added manually in LDFLAGS, e.g.:

LDFLAGS='-L/usr/local/hdf5.1.8/lib -lhdf5_hl -lhdf5 -lz'

Test

Download the file with testdata: flth00.dat.gz

Put this file into the test-catalogue

gunzip the file

run 'make check' (make check will work even without the testdata and skip a lot of tests)