Skip to content
Nigel Metheringham edited this page Nov 30, 2012 · 3 revisions
Clone this wiki locally



Is there a quick walk-through of an Exim install from source anywhere?


Here! This is a contribution from a Red Hat user, somewhat edited. On other operating systems things may be slightly different, but the general approach is the same.

  1. Install the db needed for Exim. This needs to be done first if you t have a DBM library installed. Go to download db-4.1.25.tar.gz, or whatever the current release is. :
gunzip db-4.1.25.tar.gz
tar -xvf db-4.1.25.tar
cd db-4.1.25
cd build_unix
make install
  1. Add a user for use by Exim, unless you want to use an existing user as mail:
adduser exim
  1. Now you can prepare to build Exim. Go to or of its mirrors, or the master ftp site , and download exim-4.20.tar.gz or whatever the current release is. Then:
gunzip exim-4.20.tar.gz
tar -xvf exim-4.20.tar
cd exim-4.20
cp src/EDITME Local/Makefile
cp exim_monitor/EDITME Local/eximon.conf
  1. Edit Local/Makefile:

Comment out EXIM_MONITOR= unless you want to install the Exim monitor (it requires X-windows). Set the user you want Exim to use for itself:


If your DBM library is Berkeley DB, set up to use its native interface:


Make sure Exim's build can find the DBM library and its headers. If you've installed Berkeley DB 4 you'll need to have settings like this in Local/Makefile:


(Check that the first directory contains the db.h file and that the second library exists.) You don't need to change anything else, but you might want to review the default settings in the must specify > section.

  1. Build Exim by running the make command.

  2. Install Exim by running, as root:

make install

You must be root to do this. You do not have to be root for any of the previous building activity.

  1. Run some tests on Exim; see if it will do local and remote veries. Change the configuration if necessary (for example, mmenting group on the local_delivery transport if you don't a sticky bit > directory).

  2. Change Sendmail to Exim (of course you need to have had Sendmail alled to do this).

/etc/init.d/sendmail stop
mv /usr/sbin/sendmail /usr/sbin/
ln -s /usr/exim/bin/exim /usr/sbin/sendmail
/etc/init.d/sendmail start
  1. Check the Exim log. Either use the Exim monitor, or:
tail -f /var/spool/exim/log/mainlog