DOC HOME SITE MAP MAN PAGES GNU INFO SEARCH PRINT BOOK
 
Sendmail Installation and Operation Guide
SMM:08-7
1. BASIC INSTALLATION
There are two basic steps to installing sendmail. First, you have to compile and install the binary.
If sendmail has already been ported to your operating system that should be simple. Second, you must
build a run-time configuration file. This is a file that sendmail reads when it starts up that describes the
mailers it knows about, how to parse addresses, how to rewrite the message header, and the settings of
various options. Although the configuration file can be quite complex, a configuration can usually be
built using an M4-based configuration language. Assuming you have the standard sendmail distribu-
tion, see cf/README for further information.
The remainder of this section will describe the installation of sendmail assuming you can use one
of the existing configurations and that the standard installation parameters are acceptable. All path-
names and examples are given from the root of the sendmail subtree, normally /usr/src/usr.sbin/send-
mail
on 4.4BSD-based systems.
Continue with the next section if you need/want to compile sendmail yourself. If you have a run-
ning binary already on your system, you should probably skip to section 1.2.
1.1. Compiling Sendmail
All sendmail source is in the sendmail subdirectory. To compile sendmail, "cd" into the send-
mail directory and type
./Build
This will leave the binary in an appropriately named subdirectory, e.g., obj.BSD-OS.2.1.i386. It
works for multiple object versions compiled out of the same directory.
1.1.1. Tweaking the Build Invocation
You can give parameters on the Build command. In most cases these are only used when
the obj.* directory is first created. To restart from scratch, use -c. These commands include:
-L libdirs
A list of directories to search for libraries.
-I incdirs
A list of directories to search for include files.
-E envar=value
Set an environment variable to an indicated value before compiling.
-c Create a new obj.* tree before running.
-f siteconfig
Read the indicated site configuration file. If this parameter is not specified, Build
includes
all
of the files
$BUILDTOOLS/Site/site.$oscf.m4
and
$BUILD-
TOOLS/Site/site.config.m4, where $BUILDTOOLS is normally ../devtools and $oscf is
the same name as used on the obj.* directory. See below for a description of the site
configuration file.
-S Skip auto-configuration. Build will avoid auto-detecting libraries if this is set. All
libraries and map definitions must be specified in the site configuration file.
Most other parameters are passed to the make program; for details see $BUILD-
TOOLS/README
.
1.1.2. Creating a Site Configuration File
(This section is not yet complete. For now, see the file devtools/README for details.)
See sendmail/README for various compilation flags that can be set.