This is an old revision of the document!
Building Metlibs and Diana with Autotools
- Download source 3.25.0
They both use a number of specially-written autoconf macros, which can be found in metlibs' m4
subdirectory.
Prerequisites
On a clean stock Ubuntu Lucid (10.04) install, you will first need to install build tools:
build-essential
gfortran
autoconf
automake
libtool
subversion
sudo apt-get install build-essential gfortran autoconf automake libtool subversion
Next, you will need to install various third-party libraries that Metlibs and Diana depend on:
Metlibs
flex
bison
libftgl-dev
libhdf4g-dev
libhdf5-serial-dev
(XXX actually optional)libtiff4-dev
libqt4-dev
libproj-dev
libboost-dev
(*)libboost-date-time-dev
libboost-serialization-dev
libboost-thread-dev
libgeotiff-dev
(Optional)libfimex-dev
(Optional)libmysqlclient-dev
(*)libpqxx-dev
(*) (Optional)libomniorb4-dev
(Optional)omniidl4
(Optional)libldap2-dev
(optional)liblog4cpp5-dev
libcurl4-gnutls-dev
Without optional libraries:
sudo apt-get install flex bison ftgl-dev libhdf4g-dev libtiff4-dev libqt4-dev proj libboost-dev libboost-date-time-dev \ libboost-serialization-dev libboost-thread-dev libmysqlclient-dev liblog4cpp5-dev libcurl4-gnutls-dev
With optional libraries:
sudo apt-get install flex bison ftgl-dev libhdf4g-dev libhdf5-serial-dev libtiff4-dev libqt4-dev proj libboost-dev libboost-date-time-dev \ libboost-serialization-dev libboost-thread-dev libgeotiff-dev libfimex-dev libmysqlclient-dev libpqxx-dev \ libomniorb4-dev omniidl4 libldap2-dev liblog4cpp5-dev libcurl4-gnutls-dev
Diana
libshp-dev
libavformat-dev
(Optional)- libxt-dev
Without optional libraries:
sudo apt-get install libshp-dev libxt-dev
With optional libraries:
sudo apt-get install libshp-dev libavformat-dev libxt-dev
For observation buffer support in Diana:
EMOSLIB
(no package; install manually from source)
For GRIB support in Metlibs and Diana:
GRIB API
(no package; install manually from source)
For fimex support in Metlibs and Diana:
libfimex-dev
(no package; install manually from source)
Except for those marked with (*), configure
will terminate with an error message if any required package is absent.
Installation
Metlibs
By default, all modules are enabled except for GribAPI
, “geotiff”, “fimex”, pods
, profet
and proFunctions
.
Unpack the metlibs archive and enter the directory containing the source files.
If you have root privileges on your system, configure the library by running the
configure
script:
./configure --enable-xfonts --enable-allprofet --with-fimex
Otherwise, to configure the library for installation in a directory where you
have permission to write files, run the configure
script in the following
way:
./configure --enable-xfonts --enable-allprofet --with-fimex --prefix=$HOME/diana
where, in this example, we used $HOME/diana
to specify a directory called
diana
in the user's home directory.
Build and install the library with the following commands:
make make install
You may need root privileges to install the library unless you specified a prefix in the configuration step.
Diana
By default, support for profet
and observation buffers is disabled, while video export is enabled.
Unpack the diana archive and enter the directory containing the source files. If you have root privileges on your system, configure the library by running the configure script:
./configure --enable-xlib --enable-obs-bufr --enable-profet --enable-proddb
Otherwise, to configure the library for installation in a directory where you have permission to write files, run the configure script in the following way:
./configure --enable-xlib --enable-obs-bufr --enable-profet --enable-proddb --prefix=$HOME/diana
where, in this example, we used $HOME/diana to specify a directory called diana in the user's home directory.
Build and install the application with the following commands:
make make install
You may need root privileges to install the library unless you specified a prefix in the configuration step.