This is the mail archive of the cygwin@cygwin.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Problems compiling trivial C program.


I'm having trouble compiling this test program:

void f(){}

using the command line:
gcc test.c -c -o test.o

using 1.3.19 or latest Cygwin snapshot (2003-Feb-07) (same error with
both) and gcc-3.2-3.

The error I see is:

16 bit MS-DOS Subsystem
/usr/src/cygwin-cvs/obj
The NTVDM CPU has encountered an illegal instruction.
CS:0000 IP:0077 OP:f0 37 05 0e 02 Choose 'Close' to terminate the
application.
Close | Ignore

AFAICT the command that is failing is:
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/as.exe,
P:\ccj00\cygwin\usr\i686-pc-cygwin\bin\as.exe --traditional-format -o
test.o /cygdrive/c/DOCUME~1/ccj00/LOCALS~1/Temp/cc50BUPU.s
See the following strace portion:
39542 4773296 [main] gcc 1428 spawn_guts: 1428 = spawn_guts
(/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/as.exe,
 P:\ccj00\cygwin\usr\i686-pc-cygwin\bin\as.exe --traditional-format -o
test.o /cygdrive/c/DOCUME~1/ccj00/LOCALS~1/Temp/cc50BUPU.s)
  710 4774006 [main] gcc 1428! fhandler_base::close: closing
'/usr/src/cygwin-cvs/obj/strace.log' handle 0xD0
  520 4774526 [main] gcc 1428! spawn_guts: spawned windows pid 1740
4070800 8655535 [sig] gcc 1780 wait_sig: awake
  652 8656187 [sig] gcc 1780 wait_sig: processing signal 0
 1287 8657474 [sig] gcc 1780 pinfo::init: execed process windows pid 1952,
cygwin pid 1620
  889 8658363 [sig] gcc 1780 wait_sig: looping
3887914 8662440 [sig] gcc 1428! wait_sig: awake
  616 8663056 [sig] gcc 1428! wait_sig: processing signal 0
 1420 8664476 [sig] gcc 1428! pinfo::init: execed process windows pid
1952, cygwin pid 1620
  939 8665415 [sig] gcc 1428! wait_sig: looping
The dialog box appears at this point.

procps shows the offending command running with the command line:
ccj00     1864  0.7  0.6 405536 1592 tty0    S    13:20   0:00 gcc test.c
-c -o
however ps shows it running with the command line:
     1864     480     480       1864  con 22083 13:20:49
/usr/i686-pc-cygwin/bin/as
(The above output is from a different run to the strace)
The new windows process doesn't seem to reach the Cygwin initialisation
stage.

I have tried reinstalling the gcc package. I also tried setting the TMP
and TEMP environment variables to /tmp.
None of the above solved the problem.

The command:
gcc test.c -o test
also shows the same dialog box as above and then fails with the following
error:
$ gcc test.c -o test
/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-pc-cygwin/bin/ld:
installat
ion problem, cannot exec
`/usr/lib/gcc-lib/i686-pc-cygwin/3.2/../../../../i686-p
c-cygwin/bin/ld': Invalid argument
collect2: ld returned 255 exit status

Cygcheck output and strace attached.

I don't have many debugging facilities available to me here at college,
but I can try to provide more information if necessary.

Chris

Attachment: strace.log.gz
Description: application/gunzip

Attachment: cygcheck_output
Description: Binary data

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]