Ritesh Raj Sarraf wrote:
I'm running a Sarge machine.
I have applied the following patches from qmailrocks.org to the source
package
of qmail provided by Pape Smarden at smarden.org.
qmail-1.03-forcetls-20040703.patch
qmail-1.03-jms1.5.patch
Following is the error message when I try to compile:
/usr/bin/gcc -nostdlib -static
- -L/usr/lib/diet/lib-i386 /usr/lib/diet/lib-i386/start.o -s -o qmail-remote
qmail-remote.o control.o constmap.o timeoutread.o timeoutwrite.o
timeoutconn.o tcpto.o now.o dns.o ip.o ipalloc.o strsalloc.o ipme.o quote.o
ndelay.a case.a sig.a open.a lock.a seek.a getln.a stralloc.a alloc.a
substdio.a error.a str.a fs.a auto_qmail.o -lresolv -lssl -lcrypto
- -isystem /usr/lib/diet/include -D__dietlibc__ -Os
- -mpreferred-stack-boundary=2 -falign-functions=1 -falign-jumps=1
- -falign-loops=1 -fomit-frame-pointer /usr/lib/diet/lib-i386/libc.a -lgcc
/usr/lib/gcc-lib/i486-linux/3.3.5/../../../libcrypto.a(bss_file.o)
(.text+0x8e): In function `file_ctrl':
: warning: warning: your code uses stdio (7+k bloat).
/usr/lib/diet/lib-i386/libc.a(vfprintf.o)(.text+0x36): In function
`vfprintf':
: warning: warning: the printf functions add several kilobytes of bloat.
/usr/lib/diet/lib-i386/libc.a(vsscanf.o)(.text+0x5b): In function `vsscanf':
: warning: warning: the scanf functions add several kilobytes of bloat.
/usr/lib/gcc-lib/i486-linux/3.3.5/../../../libcrypto.a(obj_dat.o)
(.text+0x958): In function `OBJ_create_objects':
: undefined reference to `__ctype_b_loc'
<snip>
Prima Facie:
You are builing against diet libc and it seems that the cryptographic
library has been linked against a different C runtime (glibc in all
probablity)...and now the compiler can't resolve symbol references from
the cryptographic library in to the C runtime.
Possible solutions [to be tried in order]:
-> Consider Suresh's suggestion - use a real MTA like Postfix or Exim.
-> Is it your decision to use diet libc or is it qmail's? Can't you link
against glibc instead? How about ucLibC?
-> Check if a newer version of diet libc has the functions you need:
__ctype_to_b, __ctype_tolower_loc, __xstat & __strtoul_internal
-> Check if there is a "compatibility" library of some sort to provide
these missing symbols in diet libc.
-> Upgrade the cryptographic library - the newest one might not depend
upon these symbols :)
-> See if you get a version of the cryptographic library compiled
against diet libc.
-> Roll your own - download the sources for the cryptographic library
and link it againt diet libc.
-> Actually follow Suresh's suggestion - use a real MTA like Postfix or
Exim.
Note: I have no first hand experience with either Debian or QMail and
plan to keep things that way.
--
Regards,
Varun Varma
---------------------------------------
Mindframe Software & Services Pvt. Ltd.
http://www.mindsw.com
---------------------------------------
-------------------------------------------------------
SF.Net email is sponsored by: Discover Easy Linux Migration Strategies
from IBM. Find simple to follow Roadmaps, straightforward articles,
informative Webcasts and more! Get everything you need to get up to
speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click
_______________________________________________
linux-india-help mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/linux-india-help