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

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 expandin the
dependencies' source distributions.

uninstall: Remove all the stuff from $prefix/deps

dist: Make a tar ball distribution.

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

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

       ./configure [other options] --with-depdendencies=$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.

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