> * In message <[EMAIL PROTECTED]> > * On the subject of "Re: crash on the first statement in main()" > * Sent on 08 Jul 2003 18:43:14 -0400 > * I write: > > * I write: > > > > I get a segfault on the first executable line in main() (confirmed in > > the debugger), both when produced by cygwin: > > > > gcc modules.o regexp.o regexi.o regex.o lisp.a > > -lintl libcharset.a libavcall.a libcallback.a -lreadline -lncurses > > -liconv -lm -o lisp.exe > > ... > > full/lisp.exe -B . -M base/lispinit.mem -norc -q -i regexp/regexp > > -x (saveinitmem "full/lispinit.mem") > > Signal 11 > > make: *** [full] Error 1 > > > > and mingw: > > > > gcc -mno-cygwin modules.o regexp.o > > regexi.o regex.o lisp.a libcharset.a libavcall.a libcallback.a -luser32 > > -lws2_32 -lole32 -luuid -o lisp.exe > > full/lisp.exe -B . -M base/lispinit.mem -norc -q -i regexp/regexp > > -x (saveinitmem "full/lispinit.mem") > > <win32 crash dialog box> > > > > the lines don't do anything special, in fact, "p <the offending line>" > > executes just fine in gdb right after the crash. > > I forgot a crucial piece of information: > > the segfault happens only with "-g"! > when I compile with "-O2", it works like a charm.
Another crucial piece of information, just discovered: lisp.a is built like this: ld -r -o lisp.o <a couple of dozens object files> chmod a-x lisp.o ar rcv lisp.a lisp.o ranlib lisp.a if I replace "lisp.a" with "lisp.o" in the GCC call that creates lisp.exe, I get the same crash. if I replace "lisp.a" with the full list of <a couple of dozens object files>, everything works out just fine. if I remove "lisp.o" altogether and create "lisp.a" with ar rcv lisp.a <a couple of dozens object files> everything works out just fine. So, for now, I have a workaround. However, this appears to be a bug in binutils. Comments? -- Sam Steingold (http://www.podval.org/~sds) running w2k <http://www.camera.org> <http://www.iris.org.il> <http://www.memri.org/> <http://www.mideasttruth.com/> <http://www.palestine-central.com/links.html> My other CAR is a CDR. -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/