Q0117 - Exim/exim GitHub Wiki
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.
- Install the db needed for Exim. This needs to be done first if you t have a DBM library installed. Go to http://www.sleepycat.com 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
../dist/configure
make
make install
- Add a user for use by Exim, unless you want to use an existing user as mail:
adduser exim
- Now you can prepare to build Exim. Go to
http://www.exim.org or of its mirrors, or the
master ftp site
ftp://ftp.csx.cam.ac.uk/pub/software/email/exim/exim4
, 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
- 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:
EXIM_USER=exim
If your DBM library is Berkeley DB, set up to use its native interface:
USE_DB=yes
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:
INCLUDE=-I/usr/local/BerkeleyDB.4.1/include
DBMLIB=/usr/local/BerkeleyDB.4.1/lib/libdb.a
(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.
-
Build Exim by running the make command.
-
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.
-
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). -
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/sendmail.org
ln -s /usr/exim/bin/exim /usr/sbin/sendmail
/etc/init.d/sendmail start
- Check the Exim log. Either use the Exim monitor, or:
tail -f /var/spool/exim/log/mainlog