This is the mail archive of the cygwin@sourceware.cygnus.com mailing list for the Cygwin project. See the Cygwin home page for more information.
Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

libmsvcrt.a and fflush (help!)


Hi,
Can anybody, please, tell me why the program below craches when linked with libmsvcrt.a ?

============== CUT flush.c here ===========
#include <stdio.h>
int main()
{
  fflush(stdout);
  return 0;
}
============== CUT flush.c here ===========

bash-2.02$ gcc -Wall flush.c ; ./a

bash-2.02$ gcc -Wall flush.c -lmsvcrt ; ./a
[main] C:\users\iod\TMP\DXPROBLEM\a.exe 1801 (0) handle_exceptions: Exception: STATUS_ACCESS_VIOLATION
[main] a 1801 (0) handle_exceptions: Dumping stack trace to a.exe.core

I used :

bash-2.02$ gcc -v
Reading specs from /cygnus/cygwin-b20/H-i586-cygwin32/lib/gcc-lib/i586-cygwin32/egcs-2.91.66/specs
gcc version egcs-2.91.66 19990314 (egcs-1.1.2 release)


You could ask why am I linking with libmsvcrt.a; I have some missed symbols in a program
using IBM DX 3d visualiser (see the symbols below). And even if 'nm' could NOT find such symbols
in libmsvcrt.a the linker stop complying when I link with such a library. Is the library
stripped from its symbols ? If yes, why ? and how the linker could find them in it ?


gcc gemsEnv.o gui_undefined.o -L/APPS/Dx/lib_intelnt -lDXL -lwsock32  -luser32
/APPS/Dx/lib_intelnt/libDXL.a(conn.o)(.text+0x32c):conn.c: undefined reference to `_imp____p__iob'
/APPS/Dx/lib_intelnt/libDXL.a(conn.o)(.text+0x3d5):conn.c: undefined reference to `_imp____p___mb_cur_max'
/APPS/Dx/lib_intelnt/libDXL.a(conn.o)(.text+0x3f0):conn.c: undefined reference to `_imp___isctype'
/APPS/Dx/lib_intelnt/libDXL.a(conn.o)(.text+0x404):conn.c: undefined reference to `_imp____p__pctype'


Thank you for your help
--
Isselmou Ould Dellahy

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com