18.5 Run Make
After you have finished tuning Makefile , you are ready to build sendmail . First (especially if you are building as root ), back up in the src directory run:
# ./makesendmail -n
This displays all the commands that
without actually executing them. If all looks well, run
again, this time without the
18.5.1 Use libresolv.a
If, when you compiled
, the linker reported
routines as missing,
you need to specify the resolver library with
LDADD= -ldbm -lcompat -lutil -lkvm
This shows one way to include that library with the V8 Makefile . Another way might look like this:
# libraries required on your system LIBS= /usr/local/lib/libresolv.a
To ensure that
achieves its optimum use of lookups,
make sure that your resolver library is derived from the latest BIND release:
You will also need to include
The tricky part is finding out which resolver library your system supports. With SunOS systems, for example, resolver support in the standard C library uses nis for name resolution. Although this setup may be good for most applications, it is inappropriate for sendmail . There is a libresolv.a , but it is based on BIND 4.3 and so should probably be replaced with a newer version.
If your resolver library is not the correct one, you need to compile and install the newest version. You should do this even if it is used only by sendmail .
18.5.2 Remove -l44bsd
If you are running an old (pre V4.9) resolver library, you will see an error like the following during the loading part of your build:
ld: -l44bsd: No such file or directory
One solution is to upgrade to BIND 4.9, which will install
library (we recommend this). Another solution
is to remove
18.5.3 Badly defined sys_errlist
Some systems define sys_errlist differently than sendmail . On such systems you may see a spurious warning about sys_errlist being redefined.
In general you should never get this error. But if you are building sendmail on a system that is similar to, but not identical to, one already supported, you may see such a warning. See Section 18.8.6, ERRLIST-PREDEFINED for a description of how to use ERRLIST_PREDEFINED to fix the problem, should it occur.