Installing Courier-Imap

Kees Vonk keesinoz@yahoo.co.uk
Thu Apr 14 05:32:00 GMT 2005


Brian Dessent wrote:
> Kees Vonk wrote:
> 
> 
>>>>/home/Kees/courier-imap-3.0.8/makedat/makedatprog.c:33: undefined
>>>>reference to `_gdbmobj_store'
>>>
>>>
>>>Try adding --with-db=gdbm to your configure line.
>>>
>>
>>Ok I tried this, but as I suspected no luck.
> 
> 1. the make should build the stuff in gdbmobj dir (resulting in
> libgdbmobj.a) before entering makedat;

No libgdbmobj.a in the gdbmobjdir, just libgdbmobj.la, libgdbmobjs.la
and libshgdbmobj.a

> 2. the link command for makedat should have libgdbmobj.a on its command
> line so that it can find the functions that are showing up as missing.

I am not sure it does this, here is the gdbmobj and makedat parts of the
make output (I am sorry about the length of it and hope it is helpful):


... [ skip lot of stuff ] ...


Making all in gdbmobj
make[2]: Entering directory `/home/Kees/courier-authlib-0.55/gdbmobj'
make  all-am
make[3]: Entering directory `/home/Kees/courier-authlib-0.55/gdbmobj'
if /bin/bash ./libtool --mode=compile --tag=CC gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT gdbmobj.lo -MD -MP -MF ".deps/gdbmobj.Tpo" -c -o gdbmobj.lo gdbmobj.c; \
then mv -f ".deps/gdbmobj.Tpo" ".deps/gdbmobj.Plo"; else rm -f ".deps/gdbmobj.Tpo"; exit 1; fi
mkdir .libs
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj.lo -MD -MP -MF .deps/gdbmobj.Tpo -c gdbmobj.c  -DPIC -o .libs/gdbmobj.o
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj.lo -MD -MP -MF .deps/gdbmobj.Tpo -c gdbmobj.c -o gdbmobj.o >/dev/null 2>&1
if /bin/bash ./libtool --mode=compile --tag=CC gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT gdbmobj2.lo -MD -MP -MF ".deps/gdbmobj2.Tpo" -c -o gdbmobj2.lo gdbmobj2.c; \
then mv -f ".deps/gdbmobj2.Tpo" ".deps/gdbmobj2.Plo"; else rm -f ".deps/gdbmobj2.Tpo"; exit 1; fi
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj2.lo -MD -MP -MF .deps/gdbmobj2.Tpo -c gdbmobj2.c  -DPIC -o .libs/gdbmobj2.o
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj2.lo -MD -MP -MF .deps/gdbmobj2.Tpo -c gdbmobj2.c -o gdbmobj2.o >/dev/null 2>&1
if /bin/bash ./libtool --mode=compile --tag=CC gcc -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT gdbmobj3.lo -MD -MP -MF ".deps/gdbmobj3.Tpo" -c -o gdbmobj3.lo gdbmobj3.c; \
then mv -f ".deps/gdbmobj3.Tpo" ".deps/gdbmobj3.Plo"; else rm -f ".deps/gdbmobj3.Tpo"; exit 1; fi
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj3.lo -MD -MP -MF .deps/gdbmobj3.Tpo -c gdbmobj3.c  -DPIC -o .libs/gdbmobj3.o
  gcc -DHAVE_CONFIG_H -I. -I. -I. -g -O2 -MT gdbmobj3.lo -MD -MP -MF .deps/gdbmobj3.Tpo -c gdbmobj3.c -o gdbmobj3.o >/dev/null 2>&1
/bin/bash ./libtool --mode=link --tag=CC gcc  -g -O2   -o libgdbmobj.la  -rpath /usr/local/lib gdbmobj.lo gdbmobj2.lo gdbmobj3.lo
libtool: link: warning: undefined symbols not allowed in i686-pc-cygwin shared libraries
ar cru .libs/libgdbmobj.a  gdbmobj.o gdbmobj2.o gdbmobj3.o
ranlib .libs/libgdbmobj.a
creating libgdbmobj.la
(cd .libs && rm -f libgdbmobj.la && ln -s ../libgdbmobj.la libgdbmobj.la)
/bin/bash ./libtool --mode=link --tag=CC gcc  -g -O2   -o libgdbmobjs.la   gdbmobj.lo gdbmobj2.lo gdbmobj3.lo
ar cru .libs/libgdbmobjs.a .libs/gdbmobj.o .libs/gdbmobj2.o .libs/gdbmobj3.o
ranlib .libs/libgdbmobjs.a
creating libgdbmobjs.la
(cd .libs && rm -f libgdbmobjs.la && ln -s ../libgdbmobjs.la libgdbmobjs.la)
if g++ -DHAVE_CONFIG_H -I. -I. -I.     -g -O2 -MT testgdbm.o -MD -MP -MF ".deps/testgdbm.Tpo" -c -o testgdbm.o testgdbm.C; \
then mv -f ".deps/testgdbm.Tpo" ".deps/testgdbm.Po"; else rm -f ".deps/testgdbm.Tpo"; exit 1; fi
/bin/bash ./libtool --mode=link --tag=CXX g++  -g -O2   -o testgdbm.exe  testgdbm.o libgdbmobj.la -lgdbm
g++ -g -O2 -o testgdbm.exe testgdbm.o  ./.libs/libgdbmobj.a /usr/lib/libgdbm.dll.a
rm -f libshgdbmobj.a
cd .libs && ar rv ../libshgdbmobj.a gdbmobj.o gdbmobj2.o gdbmobj3.o
ar: creating ../libshgdbmobj.a
a - gdbmobj.o
a - gdbmobj2.o
a - gdbmobj3.o
make[3]: Leaving directory `/home/Kees/courier-authlib-0.55/gdbmobj'
make[2]: Leaving directory `/home/Kees/courier-authlib-0.55/gdbmobj'


... [ skip lots of stuff ] ...


Making all in makedat
make[2]: Entering directory `/home/Kees/courier-authlib-0.55/makedat'
make  all-am
make[3]: Entering directory `/home/Kees/courier-authlib-0.55/makedat'
gcc -I./.. -I.. -Wall -g -O2    makedatprog.c   -o makedatprog
makedatprog.c: In function `main':
makedatprog.c:113: warning: implicit declaration of function `unlink'
/cygdrive/c/DOCUME~1/Kees/LOCALS~1/Temp/ccml5O8a.o(.text+0x7d): In function `addgdbm':
/home/Kees/courier-authlib-0.55/makedat/makedatprog.c:33: undefined reference to `_gdbmobj_store'
/cygdrive/c/DOCUME~1/Kees/LOCALS~1/Temp/ccml5O8a.o(.text+0x1ec): In function `main':
/home/Kees/courier-authlib-0.55/makedat/makedatprog.c:102: undefined reference to `_gdbmobj_init'
/cygdrive/c/DOCUME~1/Kees/LOCALS~1/Temp/ccml5O8a.o(.text+0x207):/home/Kees/courier-authlib-0.55/makedat/makedatprog.c:104: undefined reference to `_gdbmobj_open'
/cygdrive/c/DOCUME~1/Kees/LOCALS~1/Temp/ccml5O8a.o(.text+0x223):/home/Kees/courier-authlib-0.55/makedat/makedatprog.c:117: undefined reference to `_gdbmobj_close'
/cygdrive/c/DOCUME~1/Kees/LOCALS~1/Temp/ccml5O8a.o(.text+0x273):/home/Kees/courier-authlib-0.55/makedat/makedatprog.c:112: undefined reference to `_gdbmobj_close'
collect2: ld returned 1 exit status
make[3]: *** [makedatprog] Error 1
make[3]: Leaving directory `/home/Kees/courier-authlib-0.55/makedat'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/Kees/courier-authlib-0.55/makedat'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/Kees/courier-authlib-0.55'
make: *** [all] Error 2



> If you are going to figure this out you have to make sure that both 1
> and 2 are happening.
> 
> You DO have the 'libgdbm-devel' package installed, right?

Yes I do, it is part of the base category and everything in there is
installed by default.


Thank you very much for your help and patience,

Kees



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list