
	$Id: INSTALL 17544M 2008-03-05 15:10:23Z (local) $

Updated for version 3.8.5 of the OPeNDAP server base software

Building and Installing the OPeNDAP Server Base. See README for information
about server configuration.

---------------------------------------------------------------------------

BUILDING THE SOFTWARE
REQUIREMENTS
NOTES

---------------------------------------------------------------------------

BUILDING THE SOFTWARE

  To build the OPeNDAP Server Base Software, follow these steps:

  0. Please skim REQUIREMENTS and NOTES sections of this file
     before reporting problems. Thanks. If you're build this as part of Hyrax
     (aka the OPeNDAP 4 Data Server) then make usre you have first built and
     installed the appropriate version of the BES. If you have installed the
     bes in a 'special' place sure that <prefix>/bin is on your PATH 
     environment variable _before_ running configure. That will ensure that
     configure find the bes and builds the plugins need for Hyrax.

  1. Type `./configure' at the system prompt. On some systems you may have
     to type `sh configure'.

  2. Type `make' to build the software, `make check' to test the
     software.  You must have the GNU automated testing software DejaGNU and
     the CppUnit library to run all the tests. If you have neither, then the
     tests won't yield useful results.

  3. Type `make install' to install the software. The software consists of
     some Perl modules, three compiled programs written in C++ and a cgi 
     script. The Perl modules will install in /usr/local/share/dap-server, 
     the C++ programs will install in /usr/local/bin and the cgi script
     will install in /usr/local/share/dap-server-cgi. If you'd like to 
     change the installation prefix from its default of /usr/local, use 
     the --prefix option of configure. See ./configure --help for more 
     information.

  3b. After 'make install' you may have to run ldconfig as the super user or
     ensure that the directory with the handler shared libraries
     (/usr/local/lib by default) is on the LD_LIBRARY_PATH environment
     variable. 
  
  4. Type 'make bes-conf' to run the bes-nc-data.sh script which inserts the
     handler in the bes.conf file and adds test data to 
     $prefix/share/hyrax/data.

  5. See the file README for important information about configuration of the
     server. Without those extra steps, the server will not work!

REQUIREMENTS

  o The Server Base Software uses libdap 3.7.10 or greater. You must install
    that software. See http://www.opendap.org/download/.
    
  o To build this as part of Hyrax, you need the bes, version 3.5.3

  o You should have gcc/g++ 2.95.x or greater. You'll also need to get the
    stdc++ library that matches the compiler (whatever version). In most
    cases it's part of the compiler. NB: gcc 2.8.x and earlier *won't* build
    the software. We're working on modifying the software so that it will
    build with a variety of compilers. As of 02/27/06 we have built the code
    using Microsoft's Visual C++ 6.0 and GNU gcc/++ 3.2.1, 3.3, 3.4, 4.1.x.

  o If you're building from SVN or need/want to hack the configure.ac,
    acinclude.m4, et c., files, you will need the GNU auto tools 
    (autoconf 2.59 and its associated programs) . Use autoreconf to rebuild
    configure; if you call autoconf directly the aclocal.m4 file won't get
    built from acinclude.m4 correctly.

  o If you're building this software for use with Server3, you'll need the
    HTML::Parser package. You do not need this if you're building the code
    for use with Hyrax. Red Hat, Fedora Core and many other distributions
    include this as standard equipment. If the distribution you're using
    lacks HTML:Parser, here's how to get it:
  
    Using CPAN:
	    
	perl -MCPAN -e shell
	install HTML::Parser

    In some cases a few of the tests for the module may fail and CPAN will
    only install the software if you use the 'force' option:

	force install HTML::Parser

    To install using RPM, install the package perl-HTML-Parser.

NOTES

  o If you are building on a new platform (one for which we don't supply
    binaries), please run the tests and tell us about any failures. To do a
    really complete job of this you'll need to get the GNU test system called
    DejaGNU and CppUnit. It is very simple to install these and we're very
    willing to help, so don't be shy! 
