Compliation problems / cyrus-imap 2.1.9

Nick Majeran nickm at rcoeng.com
Thu Oct 17 16:48:56 EDT 2002


Hello,

I'm currently attempting to compile 2.1.9 on a Debian Woody (3.0r0) HPPA box.  I'm
running into the following problem during linkage stage of the IMAP perl
library:

* If ld (2.12.90.0.1) is used, I get this:
----------------------------------------

cc -c -I../../lib   -DDEBIAN -fno-strict-aliasing -I/usr/local/include\
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.00\" \
-DXS_VERSION=\"1.00\" -fPIC -I/usr/lib/perl/5.6.1/CORE -DPERL_POLLUTE IMAP.c
Running Mkbootstrap for Cyrus::IMAP ()
chmod 644 IMAP.bs
rm -f blib/arch/auto/Cyrus/IMAP/IMAP.so
LD_RUN_PATH="/usr/local/lib" ld  -L/usr/local/lib IMAP.o  -o\
blib/arch/auto/Cyrus/IMAP/IMAP.so ../../lib/libcyrus.a  -lsasl2 -lssl\
-lcrypto -lperl -lm  
ld: warning: cannot find entry symbol _start; defaulting to 00000000000121d4
../../lib/libcyrus.a(imclient.o): In function .L291':
imclient.o(.text+0xdec): undefined reference to $$dyncall'
imclient.o(.text+0x1018): undefined reference to $$dyncall'
../../lib/libcyrus.a(imclient.o): In function .L505':
imclient.o(.text+0x14d4): undefined reference to $$dyncall'
../../lib/libcyrus.a(imclient.o): In function .L429':
imclient.o(.text+0x300c): undefined reference to $$dyncall'
../../lib/libcyrus.a(util.o): In function kv_bsearch':
util.o(.text+0x298): undefined reference to $$dyncall'
make[2]: *** [blib/arch/auto/Cyrus/IMAP/IMAP.so] Error 1


* If cc (gcc 3.0.4) is used, I get this:
----------------------------------------
cc -c -I../../lib   -DDEBIAN -fno-strict-aliasing -I/usr/local/include
-D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -O2   -DVERSION=\"1.00\"
-DXS_VERSION=\"1.00\" -fPIC -I/usr/lib/perl/5.6.1/CORE -DPERL_POLLUTE IMAP.c
Running Mkbootstrap for Cyrus::IMAP ()
chmod 644 IMAP.bs
rm -f blib/arch/auto/Cyrus/IMAP/IMAP.so
LD_RUN_PATH="/usr/local/lib" gcc  -L/usr/local/lib IMAP.o  -o
blib/arch/auto/Cyrus/IMAP/IMAP.so ../../lib/libcyrus.a  -lsasl2 -lssl
-lcrypto -lperl -lm  
/usr/lib/gcc-lib/hppa-linux/3.0.4/../../../crt1.o: In function _start':
/usr/lib/gcc-lib/hppa-linux/3.0.4/../../../crt1.o(.text+0x0): undefined
reference to main'
/usr/lib/gcc-lib/hppa-linux/3.0.4/../../../crt1.o(.text+0x4): undefined
reference to main'
collect2: ld returned 1 exit status
make[2]: *** [blib/arch/auto/Cyrus/IMAP/IMAP.so] Error 1

Methinks its a problem with the Makefile somewhere, but I can't put a finger
on it, and after some good trial and error, I've still come back to the same
end results.  I can see why it would complain about 'main' as it would
appear to be building a shared library with no 'main' function in
../perl/imap/IMAP.c.

--------------------------------------------------------------------------

I also had a few other issues with compliation that I (who knows
if it is right) fixed:

With db 4.1.24, compilation would barf on cyrusdb_db3.c @ line 350.  gcc
complained about too few arguments to db->open().  I added a NULL so the
final called looked like:

r = db->open(db, NULL, fname, NULL, DB_BTREE, DB_CREATE, 0664);

That seemed to make gcc happy, since it was looking for a DB_TXN *txnid,
which can apparently be NULL.

I'm sure there is something rather obvious that I am missing here, but I
can't put a finger on what it is.  Any help would be greatly appriecated.

-- Nick Majeran




More information about the Info-cyrus mailing list