
Dependencies
------------

bzip2   (1.02 or higher), run 'bzip2 -V' to get the version 
openssl (0.9.7 or higher), run 'openssl version' to get the version


Installation
------------

In a perfect world ...

./configure
make
make test

Then copy to a directory on your path and use (sorry, no installer yet).

To read the manpage in the 'docs' directory:
  nroff -man docs/murk.1 | more


Common Problems
---------------

Sometimes the required libraries are not available, or there are two
versions of a library (one of which is old). Murk needs:

libcrypto.so.XXX    where XXX is the version. libcrypto is part of OpenSSL 
libbz2.a            the bzip2 static library

It could just be that these are on the system but in an unexpected place.
If your system has the command 'locate' you can find them by:
locate libcrypto.so 
locate libbz2.a

Header files may also been in non-default places:
locate evp.h
locate bzlib.h

If you can find the libraries and/or header files, extra arguments can be 
passed to configure:

./configure [-I /dir/include..] [-L /dir/lib..]

for instance:
./configure -I /usr/local/whatever/include  -L /usr/local/whatever/lib

If you get the error 'undefined reference to EVP_CipherInit_ex' then the
version of openssl is too old for murk to use. It may not be a bad idea
to upgrade if anyway (even if you never use murk).

FreeBSD
-------

The sourceforge compile farm has a FreeBSD box with two openssl versions on
it -- one in /usr/local/lib (which isn't fully usable by murk) and one in 
/usr/lib. This results in a 'undefined reference to EVP_CipherInit_ex'.

If you are in a similar position then configure with:
  ./configure -I /usr/include -L /usr/lib


Linux on amd64
--------------

There will be warnings about printf statements and size_t. This does not
effect functionality and will be fixed in later versions. Nice freakingly
fast platform though.

OSX
---

If you get:
ld: table of contents for archive: wherever/libbz2.a is out of date; rerun 
    ranlib(1) (can't load from it)

You need to run 'ranlib' on the static bzip2 library:
 ranlib whereever/libbz2.a

Solaris
-------

Only tested with gcc.

./configure
make CC=gcc

The delta test fails under Solaris. I believe this is because of Solaris tar
padding data out in some way.  Data integrity has been unaffected in all the
tests I have tried, however, I would advise caution when using Solaris,
not trust murk at this stage and treat it as a toy.

Static Linking
--------------

Some people prefer to statically link programs that do anything involved with
security. If this is the case run:
./configure --static

which will statically link to openssl and bzip2.

$Id: INSTALL,v 1.7 2005/01/24 21:48:17 alien-science Exp $
