Skip to content

OPENDAP/hyrax-dependencies

Repository files navigation

Short version: 'make' builds and installs the dependencies for Hyrax

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

To build the dependencies for the BES handlers used
with Hyrax, run 'make' in this directory. The Makefile requires that
the environment variable 'prefix' has been set. It should point to the
directory where you are installing Hyrax. The Makefile will compile,
test and install all of the dependencies in $prefix/deps.

** For the Apple M1/2 and maybe other machines, the GDAL library
needs special help finding libpng. If the GDAL library cannot find
libpng (you have to read over the GDAL configure output to learn
this and that's painful, I know) then use the Makefile variable
$(LIBPNG) to provide the base path for the libpng include and lib
directories. You can do this by writing a file called 'hyrax-site.mk'
in the directory that holds 'hyrax-dependencies' and putting
'--with-png=/path/to/include-and-lib' in that file. Look at the
top of the Makefile to see how hyrax-site.mk is included by the
main Makefile. jhrg 5/8/23

** If you get the error 'MAXPROJ Undefined' while building the hdfeos
code, then look at your shell environment for paths on CPPFLAGS, etc.,
and check for developer installs of the 'proj' library on any paths
they name.

The hdfeos build contains an include named 'proj.h' that defines
a symbol 'MAXPROJ'. However, you might have an installed version of
the 'proj' library using (Homebrew on OSX?) and _that_ also has a
header named, yes, 'proj.h' which does _not_ define MAXPROJ. If you
have the include path set using CPPFLAGS=-I/opt/homebrew/include,
for example, then the build may fail with the MAXPROJ Undefined
message because that path will get precedence over the paths in
hdfeos Makefile.

Other targets in the Makefile besides 'all'

for-static-rpm: Use this to build only static versions of the
libraries. This is used to build RPM packages for Hyrax that use
statically linked dependency libraries.

for-travis: This build the dependencies for a CI build on Travis
(which uses Ubuntu 14 as of 11/30/17).

clean: run clean in all the src dirs

really-clean: remove the src dirs and start over in the
dependencies' source distributions.

uninstall: Remove all the stuff from $prefix/deps

dist: Make a tar ball distribution.

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

To use these dependencies with the complete BES build, use the
--with-dependencies= option with its configure script like this:

       ./configure [other options] --with-dependencies=$prefix/deps

Note that most people who build Hyrax from source will want to set the
prefix to a specific directory, so that option would be included as
well (--prefix=$prefix), and the PATH environment variable should
nominally include $prefix/bin and $prefix/deps/bin.

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

About

These are the source tar.gz distributions used by various BES modules that are normally delivered with Hyrax

Resources

Stars

Watchers

Forks

Packages

No packages published

Contributors 9