Re: [Exim] Exim 3.22 doesn't compile (Linux 2.2.19 x86)

Top Page
Delete this message
Reply to this message
Author: S. Joel Bernstein
Date:  
To: Exim Users Mailing List
Subject: Re: [Exim] Exim 3.22 doesn't compile (Linux 2.2.19 x86)
Attached is the latest makelog... looks like it's getting to the end, and
then failing with:
<cut>

gcc -o exim accept.o child.o daemon.o dbfn.o debug.o deliver.o direct.o
directory.o dns.o drtables.o exim.o expand.o filter.o globals.o header.o
host.o log.o match.o moan.o os.o parse.o queue.o readconf.o retry.o
rewrite.o route.o search.o smtp_in.o smtp_out.o spool_in.o spool_out.o
store.o string.o tls.o tod.o transport.o tree.o verify.o perl.o version.o \

libident/libident.a pcre/libpcre.a directors/directors.a \

routers/routers.a transports/transports.a lookups/lookups.a \

auths/auths.a \

-lnsl -lcrypt -lpam -ldl \

-ldb -lresolv -L/usr/local/lib -lldap -llber -lmysqlclient -lpq -rdynamic -L
/usr/local/lib
/usr/lib/perl5/5.005/i386-linux/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl
5/5.005/i386-linux/CORE -lperl -lnsl -lndbm -lgdbm -ldbm -ldb -ldl -lm -lc -
lposix -lcrypt

smtp_in.o: In function `smtp_start_session':

smtp_in.o(.text+0x14fc): undefined reference to `hosts_ctl'

collect2: ld returned 1 exit status

make[1]: *** [exim] Error 1

make[1]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386'

make: *** [go] Error 2

</cut>
any more libs etc i need to add to the makefile? I've sorted out the
mysql/postgresql/tls/ssl/pam issues meself in the meantime :)

Joel
----- Original Message -----
From: "John Burnham" <jpb@???>
To: "S. Joel Bernstein" <joel@???>; "Exim Users Mailing List"
<exim-users@???>
Sent: Wednesday, June 13, 2001 4:24 PM
Subject: Re: [Exim] Exim 3.22 doesn't compile (Linux 2.2.19 x86)


> > John Burnham wrote:
> > > Yeah. It can't find mysql.h - check the value of LOOKUP_INCLUDE in

your
> > > makefile.
> > Yep, did that... now it gets a little further but still fails in the

same
> > places... mysql.h is in3 different places... which should LOOKUP_INCLUDE
> > point to?
> > cerberus:/usr/local/src/exim-3.22# locate mysql.h
>
> > /usr/include/mysql/mysql.h
>
> This one.... BTW, do you actually need/want mysql lookup support ?
> John
>
>
>
>
> --
> ## List details at http://www.exim.org/mailman/listinfo/exim-users Exim

details at http://www.exim.org/ ##
`Makefile' is up to date.

make[1]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386'
make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/pcre'
gcc -c -O  maketables.c
gcc -c -O  get.c
gcc -c -O  pcre.c
gcc -c -O  study.c
rm -f libpcre.a
ar cq libpcre.a maketables.o get.o pcre.o study.o
ranlib libpcre.a
gcc -c -DNOPOSIX -O  pcretest.c
gcc -O  -o ../../util/pcretest pcretest.o libpcre.a
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/pcre'
gcc -c -O    -I. dummies.c
gcc -c -O    -I. spool_in.c
gcc -c -O    -I. store.c
gcc -c -O    -I. string.c
gcc -c -O    -I. tree.c
gcc -o em_StripChart.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_StripChart.o | sed 's/o$/c/'`
gcc -o em_TextPop.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_TextPop.o | sed 's/o$/c/'`
gcc -o em_globals.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_globals.o | sed 's/o$/c/'`
gcc -o em_init.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_init.o | sed 's/o$/c/'`
gcc -o em_log.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_log.o | sed 's/o$/c/'`
gcc -o em_main.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_main.o | sed 's/o$/c/'`
gcc -o em_menu.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_menu.o | sed 's/o$/c/'`
gcc -o em_queue.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_queue.o | sed 's/o$/c/'`
gcc -o em_strip.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_strip.o | sed 's/o$/c/'`
gcc -o em_text.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_text.o | sed 's/o$/c/'`
gcc -o em_xs.o -c -O -I/usr/X11R6/include -I. -I../exim_monitor \
   ../exim_monitor/`echo em_xs.o | sed 's/o$/c/'`
gcc -o em_version.o -c \
  -O -I/usr/X11R6/include -I. ../exim_monitor/em_version.c
gcc -o eximon.bin em_version.o  -L/usr/X11R6/lib \
dummies.o spool_in.o store.o string.o tree.o em_StripChart.o em_TextPop.o em_globals.o em_init.o em_log.o em_main.o em_menu.o em_queue.o em_strip.o em_text.o em_xs.o -lXaw -lXmu -lXt -lXext -lX11 pcre/libpcre.a \
  -lnsl -lcrypt  -lpam -ldl  -lc


>>> exim monitor binary built


gcc -c -O    -I. exim_dumpdb.c
gcc -c -O    -I. dbfn.c
gcc -c -O    -I. os.c
gcc -O  -o exim_dumpdb  exim_dumpdb.o dbfn.o dummies.o os.o store.o string.o \
  -lnsl -lcrypt -lpam -ldl -ldb


>>> exim_dumpdb utility built


gcc -c -O    -I. exim_fixdb.c
gcc -O  -o exim_fixdb  exim_fixdb.o dbfn.o dummies.o os.o store.o string.o \
  -lnsl -lcrypt -lpam -ldl -ldb


>>> exim_fixdb utility built


gcc -c -O    -I. exim_tidydb.c
gcc -O  -o exim_tidydb  exim_tidydb.o dbfn.o dummies.o os.o store.o string.o \
  -lnsl -lcrypt -lpam -ldl -ldb


>>> exim_tidydb utility built


make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/libident'
gcc -O -DHAVE_ANSIHEADERS    -c -o ident.o ident.c
gcc -O -DHAVE_ANSIHEADERS    -c -o id_open.o id_open.c
gcc -O -DHAVE_ANSIHEADERS    -c -o id_close.o id_close.c
gcc -O -DHAVE_ANSIHEADERS    -c -o id_query.o id_query.c
gcc -O -DHAVE_ANSIHEADERS    -c -o id_parse.o id_parse.c
gcc -O -DHAVE_ANSIHEADERS    -c -o support.o support.c
gcc -O -DHAVE_ANSIHEADERS    -c -o version.o version.c
rm -f libident.a
ar cq libident.a ident.o id_open.o id_close.o id_query.o id_parse.o support.o version.o
ranlib libident.a
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/libident'


make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/lookups'
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql cdb.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql dbmdb.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql dnsdb.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql ldap.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql lsearch.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql mysql.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql nis.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql nisplus.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql pgsql.c
gcc -c -O -I /usr/local/ldap/include -I /usr/local/mysql/include -I /usr/local/pgsql/include -I /usr/include/mysql -I /usr/include/postgresql testdb.c
/bin/rm -f lookups.a
ar cq lookups.a cdb.o dbmdb.o dnsdb.o ldap.o lsearch.o mysql.o nis.o nisplus.o pgsql.o testdb.o
ranlib lookups.a
/bin/rm -rf ../drtables.o
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/lookups'

make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/directors'
gcc -c -O aliasfile.c
gcc -c -O forwardfile.c
gcc -c -O localuser.c
gcc -c -O smartuser.c
gcc -c -O df_extracted.c
gcc -c -O df_generated.c
gcc -c -O df_lookup.c
/bin/rm -f directors.a
ar cq directors.a aliasfile.o forwardfile.o localuser.o smartuser.o df_extracted.o df_generated.o df_lookup.o
ranlib directors.a
/bin/rm -rf ../drtables.o
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/directors'

make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/routers'
gcc -c -O domainlist.c
gcc -c -O ipliteral.c
gcc -c -O iplookup.c
gcc -c -O lookuphost.c
gcc -c -O queryprogram.c
/bin/rm -f routers.a
ar cq routers.a domainlist.o ipliteral.o iplookup.o lookuphost.o queryprogram.o
ranlib routers.a
/bin/rm -rf ../drtables.o
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/routers'

make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/transports'
gcc -c -O appendfile.c
gcc -c -O autoreply.c
gcc -c -O lmtp.c
gcc -c -O pipe.c
gcc -c -O smtp.c
/bin/rm -f transports.a
ar cq transports.a appendfile.o autoreply.o lmtp.o pipe.o smtp.o
ranlib transports.a
/bin/rm -rf ../drtables.o
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/transports'

make[2]: Entering directory `/usr/local/src/exim-3.22/build-Linux-i386/auths'
make[2]: `auths.a' is up to date.
make[2]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386/auths'

gcc -c -O    -I. accept.c
gcc -c -O    -I. child.c
gcc -c -O    -I. daemon.c
gcc -c -O    -I. debug.c
gcc -c -O    -I. deliver.c
gcc -c -O    -I. direct.c
gcc -c -O    -I. directory.c
gcc -c -O    -I. dns.c
gcc -c -O    -I. drtables.c
gcc -c -O    -I. exim.c
gcc -c -O    -I. expand.c
gcc -c -O    -I. filter.c
gcc -c -O    -I. globals.c
gcc -c -O    -I. header.c
gcc -c -O    -I. host.c
gcc -c -O    -I. log.c
gcc -c -O    -I. match.c
gcc -c -O    -I. moan.c
gcc -c -O    -I. parse.c
gcc -c -O    -I. queue.c
gcc -c -O    -I. readconf.c
gcc -c -O    -I. retry.c
gcc -c -O    -I. rewrite.c
gcc -c -O    -I. route.c
gcc -c -O    -I. search.c
gcc -c -O    -I. smtp_in.c
gcc -c -O    -I. smtp_out.c
gcc -c -O    -I. spool_out.c
gcc -c -O    -I. tls.c
gcc -c -O    -I. tod.c
gcc -c -O    -I. transport.c
gcc -c -O    -I. verify.c
cc -Dbool=char -DHAS_BOOL -D_REENTRANT -DDEBIAN -I/usr/local/include  -I/usr/lib/perl5/5.005/i386-linux/CORE  -O  -c perl.c
awk '{ print ($1+1) }' cnumber.h > cnumber.temp
/bin/rm -f cnumber.h; mv cnumber.temp cnumber.h
gcc -c -O    version.c
/bin/rm -f exim
gcc -o exim  accept.o child.o daemon.o dbfn.o debug.o deliver.o direct.o directory.o dns.o drtables.o exim.o expand.o filter.o globals.o header.o host.o log.o match.o moan.o os.o parse.o queue.o readconf.o retry.o rewrite.o route.o search.o smtp_in.o smtp_out.o spool_in.o spool_out.o store.o string.o tls.o tod.o transport.o tree.o verify.o perl.o version.o \
  libident/libident.a pcre/libpcre.a directors/directors.a \
  routers/routers.a transports/transports.a lookups/lookups.a \
  auths/auths.a \
  -lnsl -lcrypt   -lpam -ldl  \
  -ldb -lresolv -L/usr/local/lib -lldap -llber -lmysqlclient -lpq -rdynamic  -L/usr/local/lib /usr/lib/perl5/5.005/i386-linux/auto/DynaLoader/DynaLoader.a -L/usr/lib/perl5/5.005/i386-linux/CORE -lperl -lnsl -lndbm -lgdbm -ldbm -ldb -ldl -lm -lc -lposix -lcrypt 
smtp_in.o: In function `smtp_start_session':
smtp_in.o(.text+0x14fc): undefined reference to `hosts_ctl'
collect2: ld returned 1 exit status
make[1]: *** [exim] Error 1
make[1]: Leaving directory `/usr/local/src/exim-3.22/build-Linux-i386'
make: *** [go] Error 2