[Exim] compiling on mysql and rh9

Top Page
Delete this message
Reply to this message
Author: Simon Bell
Date:  
To: exim-users
Subject: [Exim] compiling on mysql and rh9
This is a multi-part message in MIME format.
--
[ Picked text/plain from multipart/alternative ]
Hi.

When I try to compile exim with mysql support on redhat 9 I get this
error:

make[1]: Entering directory `/root/exim-4.20/build-Linux-i386'
make[2]: Entering directory `/root/exim-4.20/build-Linux-i386/pcre'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/exim-4.20/build-Linux-i386/pcre'
make[2]: Entering directory `/root/exim-4.20/build-Linux-i386/lookups'
gcc -c -O -I/usr/kerberos/include mysql.c
mysql.c:31:49: mysql.h: No such file or directory
mysql.c:39: parse error before "MYSQL"
mysql.c:39: warning: no semicolon at end of struct or union
mysql.c:40: warning: data definition has no type or storage class
mysql.c:42: parse error before '*' token
mysql.c:42: warning: data definition has no type or storage class
mysql.c: In function `mysql_tidy':
mysql.c:69: `cn' undeclared (first use in this function)
mysql.c:69: (Each undeclared identifier is reported only once
mysql.c:69: for each function it appears in.)
mysql.c: In function `perform_mysql_search':
mysql.c:108: `MYSQL' undeclared (first use in this function)
mysql.c:108: `mysql_handle' undeclared (first use in this function)
mysql.c:109: `MYSQL_RES' undeclared (first use in this function)
mysql.c:109: `mysql_result' undeclared (first use in this function)
mysql.c:110: `MYSQL_ROW' undeclared (first use in this function)
mysql.c:110: parse error before "mysql_row_data"
mysql.c:111: `MYSQL_FIELD' undeclared (first use in this function)
mysql.c:111: `fields' undeclared (first use in this function)
mysql.c:119: `cn' undeclared (first use in this function)
mysql.c:205: warning: comparison between pointer and integer
mysql.c:272: `mysql_row_data' undeclared (first use in this function)
mysql.c:274: warning: initialization makes pointer from integer without
a cast
make[2]: *** [mysql.o] Error 1
make[2]: Leaving directory `/root/exim-4.20/build-Linux-i386/lookups'

make[2]: Entering directory `/root/exim-4.20/build-Linux-i386/routers'
make[2]: `routers.a' is up to date.
make[2]: Leaving directory `/root/exim-4.20/build-Linux-i386/routers'

make[2]: Entering directory
`/root/exim-4.20/build-Linux-i386/transports'
make[2]: `transports.a' is up to date.
make[2]: Leaving directory `/root/exim-4.20/build-Linux-i386/transports'

make[2]: Entering directory `/root/exim-4.20/build-Linux-i386/auths'
make[2]: `auths.a' is up to date.
make[2]: Leaving directory `/root/exim-4.20/build-Linux-i386/auths'


awk '{ print ($1+1) }' cnumber.h > cnumber.temp
rm -f cnumber.h; mv cnumber.temp cnumber.h
gcc -c -O   -I/usr/kerberos/include version.c
rm -f exim
gcc -o exim  acl.o child.o crypt16.o daemon.o dbfn.o debug.o deliver.o
directory.o dns.o drtables.o enq.o exim.o expand.o filter.o filtertest.o
globals.o header.o host.o ip.o log.o lss.o match.o moan.o os.o parse.o
queue.o rda.o readconf.o receive.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 local_scan.o  version.o \
  pcre/libpcre.a \
  routers/routers.a transports/transports.a lookups/lookups.a \
  auths/auths.a \
  -lresolv -lnsl -lcrypt    \
   -ldb   -lssl -lcrypto
drtables.o(.data+0x128): undefined reference to `mysql_open'
drtables.o(.data+0x130): undefined reference to `mysql_find'
drtables.o(.data+0x138): undefined reference to `mysql_tidy'
drtables.o(.data+0x13c): undefined reference to `mysql_quote'
collect2: ld returned 1 exit status
make[1]: *** [exim] Error 1
make[1]: Leaving directory `/root/exim-4.20/build-Linux-i386'
make: *** [go] Error 2


-----

I have no idea what all this stuff really means. Is there a simple
solution? Something ive missed? (exim compiles and works fine without
mysql selected)

thanks
Simon
--