Subject: undefined references
From: [email-masked] (Brian Ryner)

29 Jan 1999 04:37:43 -0800
Message-ID: <[email-masked]>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Content-Transfer-Encoding: 7bit
To: [email-masked]

Hi-

I'm attempting to port Mozilla's NSPR library to compile under Cygwin. 
I'm using B20.1, and the egcs 1.1.1 binaries from the cygwin site.  I'm
having a problem when it tries to build the DLL.  The command line it's
running and the errors that are generated are attached below.  It seems
like I'm not linking to the right libraries, but I can't figure out
which ones exactly.  Below the output I've also attached some of the
lines of code where it says the undefined references are.  Any help is
much appreciated.

ld  --dll -o WIN954.0_DBG.OBJ/libnspr21.dll -e _DllMain@12 --base-file
WIN954.0_DBG.OBJ/libnspr21.dll.base WIN954.0_DBG.OBJ/prvrsion.obj
io/WIN954.0_DBG.OBJ/prfdcach.obj io/WIN954.0_DBG.OBJ/prmwait.obj
io/WIN954.0_DBG.OBJ/prmapopt.obj io/WIN954.0_DBG.OBJ/priometh.obj
io/WIN954.0_DBG.OBJ/prlayer.obj io/WIN954.0_DBG.OBJ/prlog.obj
io/WIN954.0_DBG.OBJ/prmmap.obj io/WIN954.0_DBG.OBJ/prpolevt.obj
io/WIN954.0_DBG.OBJ/prprf.obj io/WIN954.0_DBG.OBJ/prscanf.obj
io/WIN954.0_DBG.OBJ/prstdio.obj threads/WIN954.0_DBG.OBJ/prcmon.obj
threads/WIN954.0_DBG.OBJ/prtpd.obj linking/WIN954.0_DBG.OBJ/prlink.obj
malloc/WIN954.0_DBG.OBJ/prmalloc.obj malloc/WIN954.0_DBG.OBJ/prmem.obj
md/WIN954.0_DBG.OBJ/prosdep.obj memory/WIN954.0_DBG.OBJ/prseg.obj
misc/WIN954.0_DBG.OBJ/pralarm.obj misc/WIN954.0_DBG.OBJ/pratom.obj
misc/WIN954.0_DBG.OBJ/prcountr.obj misc/WIN954.0_DBG.OBJ/prdtoa.obj
misc/WIN954.0_DBG.OBJ/prenv.obj misc/WIN954.0_DBG.OBJ/prerror.obj
misc/WIN954.0_DBG.OBJ/prinit.obj misc/WIN954.0_DBG.OBJ/prinrval.obj
misc/WIN954.0_DBG.OBJ/prlog2.obj misc/WIN954.0_DBG.OBJ/prlong.obj
misc/WIN954.0_DBG.OBJ/prnetdb.obj misc/WIN954.0_DBG.OBJ/prolock.obj
misc/WIN954.0_DBG.OBJ/prsystem.obj misc/WIN954.0_DBG.OBJ/prthinfo.obj
misc/WIN954.0_DBG.OBJ/prtrace.obj misc/WIN954.0_DBG.OBJ/prtime.obj
io/WIN954.0_DBG.OBJ/prdir.obj io/WIN954.0_DBG.OBJ/prfile.obj
io/WIN954.0_DBG.OBJ/prio.obj io/WIN954.0_DBG.OBJ/prsocket.obj
threads/WIN954.0_DBG.OBJ/prcthr.obj threads/WIN954.0_DBG.OBJ/prdump.obj
threads/WIN954.0_DBG.OBJ/prmon.obj threads/WIN954.0_DBG.OBJ/prsem.obj
threads/combined/WIN954.0_DBG.OBJ/prucpu.obj
threads/combined/WIN954.0_DBG.OBJ/prucv.obj
threads/combined/WIN954.0_DBG.OBJ/prulock.obj
threads/combined/WIN954.0_DBG.OBJ/prustack.obj
threads/combined/WIN954.0_DBG.OBJ/pruthr.obj
md/windows/WIN954.0_DBG.OBJ/w95io.obj
md/windows/WIN954.0_DBG.OBJ/w95sock.obj
md/windows/WIN954.0_DBG.OBJ/w95thred.obj
md/windows/WIN954.0_DBG.OBJ/w95cv.obj
md/windows/WIN954.0_DBG.OBJ/ntgc.obj
md/windows/WIN954.0_DBG.OBJ/ntmisc.obj
md/windows/WIN954.0_DBG.OBJ/ntinrval.obj
md/windows/WIN954.0_DBG.OBJ/ntsem.obj
md/windows/WIN954.0_DBG.OBJ/win32_errors.obj
md/windows/WIN954.0_DBG.OBJ/w32poll.obj
md/windows/WIN954.0_DBG.OBJ/w95dllmain.obj  -luser32 -lgdi32 -lcomdlg32
-lkernel32 -ladvapi32 -lshell32 -lwsock32 -lwinmm -lc 
io/WIN954.0_DBG.OBJ/prprf.obj: In function `cvt_ll':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/io/prprf.c:295: undefined
reference to `__udivdi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/io/prprf.c:295: undefined
reference to `__umoddi3'
misc/WIN954.0_DBG.OBJ/prinrval.obj: In function
`PR_MillisecondsToInterval':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prinrval.c:82:
undefined reference to `__udivdi3'
misc/WIN954.0_DBG.OBJ/prinrval.obj: In function
`PR_MicrosecondsToInterval':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prinrval.c:97:
undefined reference to `__udivdi3'
misc/WIN954.0_DBG.OBJ/prinrval.obj: In function
`PR_IntervalToMilliseconds':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prinrval.c:117:
undefined reference to `__udivdi3'
misc/WIN954.0_DBG.OBJ/prinrval.obj: In function
`PR_IntervalToMicroseconds':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prinrval.c:132:
undefined reference to `__udivdi3'
misc/WIN954.0_DBG.OBJ/prtime.obj: In function `ComputeGMT':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prtime.c:103:
undefined reference to `__divdi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prtime.c:104:
undefined reference to `__moddi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prtime.c:116:
undefined reference to `__divdi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prtime.c:117:
undefined reference to `__moddi3'
misc/WIN954.0_DBG.OBJ/prtime.obj: In function `PR_LocalTimeParameters':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/misc/prtime.c:668:
undefined reference to `__divdi3'
md/windows/WIN954.0_DBG.OBJ/w95io.obj: In function
`PR_FileTimeToPRTime':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:447:
undefined reference to `__divdi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:487:
undefined reference to `__divdi3'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:487:
undefined reference to `__divdi3'
md/windows/WIN954.0_DBG.OBJ/w95io.obj: In function `PR_MD_STAT':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:497:
undefined reference to `_stat'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:518:
undefined reference to `_stat'
md/windows/WIN954.0_DBG.OBJ/w95io.obj: In function `PR_MD_ACCESS':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:808:
undefined reference to `_access'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95io.c:811:
undefined reference to `_access'
md/windows/WIN954.0_DBG.OBJ/w95thred.obj: In function
`PR_MD_CREATE_THREAD':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95thred.c:108:
undefined reference to `_beginthreadex'
md/windows/WIN954.0_DBG.OBJ/w95thred.obj: In function `MD_EXIT':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/w95thred.c:202:
undefined reference to `_exit'
md/windows/WIN954.0_DBG.OBJ/ntmisc.obj: In function `PR_Now':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:73:
undefined reference to `ftime'
md/windows/WIN954.0_DBG.OBJ/ntmisc.obj: In function
`PR_Win32InitTimeZone':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:137:
undefined reference to `__imp__tzname'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:139:
undefined reference to `__imp__tzname'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:144:
undefined reference to `__imp__timezone'
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:145:
undefined reference to `__imp__daylight'
md/windows/WIN954.0_DBG.OBJ/ntmisc.obj: In function `compare':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntmisc.c:346:
undefined reference to `_stricmp'
md/windows/WIN954.0_DBG.OBJ/ntinrval.obj: In function
`PR_MD_GET_INTERVAL':
/cygnus/cygwin-b20/src/mozilla/nsprpub/pr/src/md/windows/ntinrval.c:73:
undefined reference to `timeGetTime'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(abort.o): In
function `abort':
/home/noer/src/b20/comp-tools/devo/newlib/libc/stdlib/abort.c:62:
undefined reference to `_exit'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(freer.o): In
function `malloc_trim_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/stdlib/mallocr.c:3239:
undefined reference to `sysconf'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(openr.o): In
function `open_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/openr.c:58:
undefined reference to `_open'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(vfprintf.o):
In function `vfprintf_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/stdio/vfprintf.c:703:
undefined reference to `__umoddi3'
/home/noer/src/b20/comp-tools/devo/newlib/libc/stdio/vfprintf.c:704:
undefined reference to `__udivdi3'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(mallocr.o):
In function `malloc_extend_top':
/home/noer/src/b20/comp-tools/devo/newlib/libc/stdlib/mallocr.c:2133:
undefined reference to `sysconf'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(signalr.o):
In function `kill_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/signalr.c:59:
undefined reference to `_kill'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(signalr.o):
In function `getpid_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/signalr.c:94:
undefined reference to `_getpid'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(sbrkr.o): In
function `sbrk_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/sbrkr.c:61:
undefined reference to `_sbrk'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(fstatr.o):
In function `fstat_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/fstatr.c:61:
undefined reference to `_fstat'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(closer.o):
In function `close_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/closer.c:53:
undefined reference to `_close'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(writer.o):
In function `write_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/writer.c:58:
undefined reference to `_write'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(lseekr.o):
In function `lseek_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/lseekr.c:58:
undefined reference to `_lseek'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(readr.o): In
function `read_r':
/home/noer/src/b20/comp-tools/devo/newlib/libc/reent/readr.c:58:
undefined reference to `_read'
/cygnus/cygwin-b20/H-i586-cygwin32/i586-cygwin32/lib/libc.a(sysfstat.o):
In function `fstat':
/home/noer/src/b20/comp-tools/devo/newlib/libc/syscalls/sysfstat.c:14:
undefined reference to `_fstat'
make[2]: *** [WIN954.0_DBG.OBJ/libnspr21.dll] Error 1

nsprpub/pr/src/io/prprf.c:295
	LL_UDIVMOD(&quot, &rem, num, rad);
this is a macro that is implemented as:
#define LL_UDIVMOD(qp, rp, a, b) \
    (*(qp) = ((PRUint64)(a) / (b)), \
     *(rp) = ((PRUint64)(a) % (b)))

-Brian Ryner
[email-masked]
-
For help on using this list (especially unsubscribing), send a message to
"[email-masked]" with one line of text: "help".