			    Platform Notes
			    --------------

This file describes platform specific notes for monit.  In case you
are looking for precompiled packages for your platform you might want
to have a look in the PACKAGES file.

GNU/Linux
=========

Monit compiles out of the box on Linux.  Some Linux Distributions
might have monit as a precompiled package (e.g. Debian/unstable).

In order to be able to use resource support you have to have PROCFS
support enabled in your kernel.  In case your kernel has fortified
your proc filesystem, e.g. using the openwall patchset, you might need
to start monit as the root user. 

In case a glibc replacement is used one of the following parts may
apply.

dietlibc
--------

Since version 4.0 the use of dietlibc is supported by monit.  For SSL
support you need to compile the ssl libraries with dietlibc; use the
"--with-ssl-lib-dir=<path>" option to configure monit.

A configure for dietlibc might look like this:

  env CC="diet gcc" ./configure --with-ssl-lib-dir=/usr/lib/diet/lib-i386/


uClibc
------

The support for uClibc has been integrated in version 4.0.  Like
dietlibc you need to compile openssl with uClibc for SSL support.  You
also need to have the openssl include files outside of your "standard"
include files (e.g. use an "openssl" link in you <uClibc>/include
tree).  Otherwise your uClibc include files are mixed up with the
glibc includes. Finally, specify your <uClibc>/ tree in your configure
run with "--with-ssl-dir=<path>".

A configure for uClibc might look like this:

  env CC="i386-uclibc-gcc" ./autogen.sh --with-ssl-dir=/usr/i386-linux-uclibc


Solaris
=======

Monit is running on Solaris without additional options.  You can use
either gcc or Forte C for compilation.  

Monit has to be started as root to work with resource support.  

In case 64bit executables are monitored with monit you have to use a
64bit compiled monit.  Furthermore, you do need a 64bit compiled
openssl (optional in case SSL support is configured) and a flex
library (mandatory).


Mac OS X
========

Rick Robino reports:

The malloc quirk remains with cli status checks, whether or not ssl
support is built, but I think it's safe to ignore because status is
ephemeral and doesn't affect the daemon. A warning in the platforms
file would suffice, imho.


Any other not yet mentioned but posix compatible platform
=========================================================

Monit might be able to compile using the "UNKNOWN" architecure.  In
case a wrong platform is detected you can enforce this behavior by
using the "--without-resource" flag in the configure run.  Generally,
it is advisable to stick to gcc for compiling.
