#
# INSTALL -- installation instructions
#
-# $Id$
-#
--------------
Installing nmh
build instructions for your operating system. To build nmh, you will
need an ANSI C compiler such as gcc.
+0) If you have obtained nmh by checking it out of CVS, you will
+ need to run the GNU autotools to regenerate some files.
+ (If your directory already contains a file 'config.h.in'
+ then this has already been done and you do not need to do it.)
+ You can regenerate the files by running the command
+
+ ./autogen.sh
+
+ (Note that if you're doing nmh development, you should look at
+ docs/README.developers, since there is other developer-friendly
+ advice there as well.)
+
+ If you have obtained nmh in the form of a tar archive and are
+ trying to unpack it with cpio: due to an apparent bug in cpio, it
+ might fail with "Malformed number" error messages. Try another
+ tool to unpack, such as tar or pax.
+
1) From the top-level source directory, run the command
./configure [options]
- This will check the configuration of your OS, and create the
+ This will check the configuration of your OS, and create the
include file config.h, as well as the various Makefiles.
- The configure script accepts various options. The options of
- most interest are listed in a section below. To see the list
+ The configure script accepts various options. The options of
+ most interest are listed in a section below. To see the list
of all available options, you can run
./configure --help
injecting the message to a mail transfer agent (such as sendmail)
on the local machine via SMTP.
- If, instead, all your mail sending and receiving occurs on a
- remote POP/SMTP server, you will need to look at the values of the
+ If, instead, all your mail sending and receiving occurs on a
+ remote POP/SMTP server, you will need to look at the values of the
variables "localname", "pophost", and "servers":
a) "localname" defines the hostname that nmh considers local.
Check the `mh-tailor' man page for a list of all the available options
for this file ("masquerade" may be of particular interest).
-6) If you have enabled POP support, make sure that `pop3' (or more
- precisely the value of the define POPSERVICE in config.h) is defined
- in the /etc/services file (or its NIS/NIS+ equivalent) on the client
- machine. It should be something equivalent to "110/tcp". This might
- have already been done when the POP daemon was installed.
-
-7) Edit the file `mhn.defaults' (installed in the nmh `etc' directory).
+6) Edit the file `mhn.defaults' (installed in the nmh `etc' directory).
This file contains the default profile entries for the nmh command
`mhn' and is created by the script `mhn.defaults.sh'. This script
will search a generic path (essentially your $PATH) for programs to
to edit the `mhn.defaults' file manually. The syntax of this file is
described in the man page for `mhn', and in section 9.4 of the book
"MH & xmh: Email for Users and Programmers", 3rd edition, by Jerry Peek,
- on the Internet at <http://www.ics.uci.edu/~mh/book/mh/confmhn.htm>.
+ on the Internet at <http://rand-mh.sourceforge.net/book/mh/confmhn.html>.
-9) Add an optional global mh.profile, if desired. This profile should be
+7) Add an optional global mh.profile, if desired. This profile should be
placed in the nmh `etc' directory with the name `mh.profile'. This
file will be used to construct the initial .mh_profile of a new nmh
user, but will not be consulted after that.
configuration section of the top level Makefile (after running configure)
or giving "configure" initial values for these variables by setting them
in the environment. Using a Bourne-compatible shell (such as sh,ksh,zsh),
-
+
you can do that on the command line like this:
CC=c89 CFLAGS=-O2 LIBS=-lposix ./configure
-
+
Or on systems that have the "env" program, you can do it like this:
env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure
+If you want to add to, not replace, compile flags, you can use
+OURDEFS with env or like this:
+ OURDEFS='-Wextra -Wno-sign-compare' ./configure
+
----------------------------------------
Building nmh on additional architectures
----------------------------------------
state. You can then configure nmh as above on other architectures in
which you wish to build nmh. Or alternatively, you can use a different
build directory for each architecture.
-
+
---------------------------------
Using a different build directory
---------------------------------
the directory where you want the object files and executables to go and
run the "configure" script. "configure" automatically checks for the
source code in the directory that "configure" is in. For example,
-
+
cd /usr/local/solaris/nmh
/usr/local/src/nmh-1.0/configure
make
--enable-debug
Enable debugging support.
---enable-masquerade[='draft_from mmailid username_extension']
- If this option is not specified, the mts.conf file will contain the line
- "masquerade: " (with no value), which may be manually edited later. You
- may find it convenient to specify a value at configure-time, however, so
- that each time nmh is reinstalled, the right value will be there.
+--enable-masquerade[='draft_from mmailid username_extension']
+ If this option is disabled, the mts.conf file will contain the
+ line "masquerade: " (with no value), which may be manually edited
+ later. You may find it convenient to specify a value at
+ configure-time, however, so that each time nmh is reinstalled,
+ the right value will be there. By default, it is enabled.
- The above usage shows all three masquerade options being specified, but any
- subset of the three may be specified. If you do want to enable all three,
- you can simply use `configure --enable-masquerade' as a shortcut.
+ The above usage shows the default, with all three masquerade
+ options being specified. Any subset of the three may be
+ specified.
See the mh-tailor(5) man page for full documentation of "masquerade:".
---enable-mhe (DEFAULT)
- Add support for the Emacs front-end `mhe'.
-
--enable-pop
Enable client-side support for pop.