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