Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/adokter/rave

fork from git://git.baltrad.eu/rave.git
https://github.com/adokter/rave

Last synced: about 2 months ago
JSON representation

fork from git://git.baltrad.eu/rave.git

Awesome Lists containing this project

README

        

README for
Radar Analysis and Visualization Environment
R A V E

Anders Henja and Daniel Michelson
Swedish Meteorological and Hydrological Institute

January 2012


RAVE has been developed on Ubuntu starting at version 8.04, and OSX.
It has been verified on a number of other systems too (see below).
Your experiences may differ when building RAVE, and the software on
which it is dependent, on a different platform. Please collect your
experiences and share them.

RAVE may work on proprietary unices but it is not designed for Windows.

INTRODUCTION

A stock Python build, together with a few extra third-party packages,
provides the basis for installing RAVE. When these are all installed,
building and installing RAVE can be done with a single "make" command
provided the correct environment variables are set.

Some systems bundle all third-party software together with their own
software. This has not been done for RAVE. The motivation for this is that
it should be possible to maintain and update the third-party software
without influencing RAVE, to the furthest extent possible.

VERIFIED SYSTEMS

RAVE is known to work on the following 64-bit systems:
Ubuntu 8.04 through 11.10
Debian 6 (Squeeze)
CentOS 5.3, 5.4, 5.5 (Final), and 5.7 (Final)
Red Hat Enterprise 6
Mac OSX 10.5 (Leopard), 10.6 (Snow Leopard), 10.8 (Mountain Lion)

ZLIB (optional)
---------------
Most 64-bit Linux distributions contain this library. It is required for HDF5
and the Python Imaging Library. Versions prior to 1.2.3 may contain a security
vulnerability. You should therefore verify the version on your system
before continuing. If you need to upgrade, get it at http://www.zlib.net/ .

Tcl and Tk 8.5.5
----------------
If your IT department is as paranoid as ours, then your computers are
almost useless and you have to do more work yourself to get them to work
properly. A simple visualizer in RAVE relies on the Tkinter module, which
in turn is dependent on Tcl/Tk being available on your computer. It it's
not there already, download from http://www.tcl.tk/ and install with by:

$ ./configure --prefix= --enable-shared --enable-64bit (optional)
$ make
$ make install

Update your $PATH and $LD_LIBRARY_PATH in your .cshrc or .bash_profile .

Python 2.6 final
----------------
Download Python from python.org .
We stick with Python 2.6 and maybe 2.7. The migration to 3.0 will come later.

$ ./configure --prefix= --enable-shared
Important: --with-universal-archs=32-bit or --with-universal-archs=64-bit
depending on your OS. You may have to specify this if you're running a
32-bit OS on a 64-bit machine. Maybe...
Or, to play it safe, use --with-universal-archs=all

$ make
$ make test
$ make install

NOTE for 64-bit platforms: after building and installing Python, you have
to edit /lib/python2.6/config/Makefile . Line 59 (of my
installation) contains the declaration of compiler options "OPT". Add
-fPIC to the end of the list. (In some of the packages we compile later,
this option will be used twise but that's OK.)

Modify your $PATH in a .cshrc or .bash_profile so you don't run the wrong
Python.

Numeric Python (NumPy) 1.2.1
----------------------------
Get NumPy from http://numpy.scipy.org/ .

/bin/python setup.py install
Now wasn't that fun!

Python Imaging Library 1.1.6
----------------------------
Get PIL from http://www.pythonware.com/products/pil/ .

$ sh BUILDME
(The "selftest.py" script might fail if you don't have JPEG installed. You
don't need JPEG for RAVE.)

$ /bin/python setup.py install

HDF5 1.8.5-patch1 or higher
---------------------------
See the README-HDF5 file about how the HDF5 file format is dealt with in RAVE.

Download HDF5 from hdfgroup.org .
The use of 1.8.x is mandatory. Previous versions will not work.

HDF5 will determine if you're running a 32- or 64-bit OS.

$ ./configure --prefix=
Useful but optional features: --enable-fortran --enable-cxx
--with-pthread --enable-threadsafe

$ make
$ make check
$ make install
$ (optionally) make check-install

LD_LIBRARY_PATH (reminder!)
---------------
Make sure your LD_LIBRARY_PATH points to the correct locations of Python
and HDF5! If you miss this step, then weirdness will happen!

HL-HDF and PyHL
---------------
Download the hlhdf.git package from git.baltrad.eu and follow the
directives in the INSTALL file.

PROJ.4 4.7.0
------------
Download PROJ.4 from http://trac.osgeo.org/proj/ .

$ ./configure --prefix=
$ make
$ make install

Add /lib to your LD_LIBRARY PATH and /bin to your PATH if
you want to use the binary tools.

cURL and PycURL 7.19.0 or higher
--------------------------------
Download cURL from curl.haxx.se.

$ ./configure
$ make
$ make install

Download PycURL from http://pycurl.sourceforge.net/ .

$ /bin/python setup.py install

RAVE
----
Better late than never...

See the INSTALL file.

CONFIGURATION
-------------
In the 'config' directory, it is your responsibility to ensure that the
configuration files are up-to-date. If configuration files for your
country's radars, projections, and areas don't exist, then create them
using existing files as templates.

Radar configuration: _radars.xml
Cartographic projections: _projections.xml
Coverage areas: _areas.xml

Read the TODO file to see how RAVE may evolve.

USING KEYCZAR KEYS
------------------
If you want to inject files into a BALTRAD DEX, you have to generate a key
for signing the messages. The following assumes you have installed the
Python package, but should be pretty much the same if you use the Java
package. We'll create an asymmetric DSA key and then export the public key
from it.

First, create a "store" for your key:

$ python -m keyczar.keyczart create \
--location=/path/to/your/key \
--purpose=sign \
--name=keyname \
--asymmetric=dsa

Then generate the key itself:

$ python -m keyczar.keyczart addkey \
--location=/path/to/your/key \
--status=primary

Then export the public key:

$ python -m keyczar.keyczart pubkey \
--location=/path/to/your/key \
--destination=/path/to/your/key.pub

The public key should then be put to the BALTRAD NODE installation at
etc/bltnode-keys/$DEX_NODENAME.pub.

Remember to keep your private key (at /path/to/your/key) secret and safe!