[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Is the Cygw32 port ready for testing?

From: Eli Zaretskii
Subject: Re: Is the Cygw32 port ready for testing?
Date: Tue, 16 Oct 2012 20:24:18 +0200

> Date: Tue, 16 Oct 2012 09:23:28 -0400
> From: Ken Brown <address@hidden>
> CC: Eli Zaretskii <address@hidden>, address@hidden
> ./configure --with-w32 CFLAGS='-g -O0' && make
> The Emacs abort dialogue box pops up when the build gets to this point:
> gcc -std=gnu99  -Demacs  -I. -I/home/kbrown/src/emacs/test-w32/src 
> -I../lib -I/home/kbrown/src/emacs/test-w32/src/../lib 
> -I/usr/include/libxml2   -I/usr/include/dbus-1.0 
> -I/usr/lib/dbus-1.0/include          -MMD -MF deps/.d -MP 
> -I/usr/include/p11-kit-1      -g -O0   -L/usr/lib/noX \
>    -o temacs pre-crt0.o dispnew.o frame.o scroll.o xdisp.o menu.o 
> window.o  charset.o coding.o category.o ccl.o character.o chartab.o 
> bidi.o  cm.o term.o terminal.o xfaces.o   dbusbind.o  emacs.o keyboard.o 
> macros.o keymap.o sysdep.o  buffer.o filelock.o insdel.o marker.o 
> minibuf.o fileio.o dired.o  cmds.o casetab.o casefiddle.o indent.o 
> search.o regex.o undo.o  alloc.o data.o doc.o editfns.o callint.o 
> eval.o floatfns.o fns.o font.o print.o lread.o  syntax.o unexcw.o 
> bytecode.o  process.o gnutls.o callproc.o  region-cache.o sound.o 
> atimer.o  doprnt.o intervals.o textprop.o composite.o xml.o  profiler.o 
>      sheap.o cygw32.o   w32fns.o w32menu.o w32reg.o w32font.o w32term.o 
> w32xfns.o w32select.o w32uniscribe.o fontset.o fringe.o image.o 
> terminfo.o  gmalloc.o   lastfile.o vm-limit.o   ../lib/libgnu.a 
> -lkernel32 -luser32 -lgdi32 -lole32 -lcomdlg32 -lusp10 -lcomctl32 
> -lwinspool   -ltiff -ljpeg -lpng -lz -lm -lgif -lXpm          -ldbus-1 
> -lpthread -lrt      -lxml2 -lz -liconv -lm       -lncurses 
> -L/usr/bin -lgnutls -lnettle -lhogweed -lgmp -ltasn1 -lp11-kit -lz 
> -lpthread
> test "no" = "yes" || \
>    test "X" = X ||  -r temacs.exe
> cd ../lisp; make -w update-subdirs
> make[2]: Entering directory `/home/kbrown/src/emacs/test-w32/lisp'
> cd /home/kbrown/src/emacs/test-w32/lisp; subdirs=`find . -type d 
> -print`;  for file in $subdirs; do  case $file in */.* | */.*/* | */=* | 
> */cedet* ) ;;  *) wins="$wins $file" ;;  esac;  done; \
> for file in $wins; do \
>     /home/kbrown/src/emacs/test-w32/build-aux/update-subdirs $file; \
> done;
> make[2]: Leaving directory `/home/kbrown/src/emacs/test-w32/lisp'
> if test "no" = "yes"; then \
>    rm -f bootstrap-emacs.exe; \
>    ln temacs.exe bootstrap-emacs.exe; \
> else \
>    `/bin/pwd`/temacs --batch --load loadup bootstrap || exit 1; \
>    test "X" = X ||  -zex emacs.exe; \
>    mv -f emacs.exe bootstrap-emacs.exe; \
> fi

Does it also crash if you invoke the following command from the Bash
prompt in the src directory?

  ./temacs --batch --load loadup bootstrap

If this also crashes, then please run the same command from GDB, and
see what happens.

> At this point I attached gdb.  The session didn't provide any 
> information that I can see, but I'm attaching a log (gdb.txt).
> [...]
> GNU gdb (GDB) (cygwin-special)
> Copyright (C) 2012 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "i686-cygwin".
> For bug reporting instructions, please see:
> <http://www.gnu.org/software/gdb/bugs/>.
> Attaching to process 3672
> [New Thread 3672.0x16cc]
> [New Thread 3672.0x1c0]
> [New Thread 3672.0x1e00]
> Reading symbols from /home/kbrown/src/emacs/test-w32/src/temacs.exe...done.
> warning: File "/home/kbrown/src/emacs/test-w32/src/.gdbinit" auto-loading has 
> been declined by your `auto-load safe-path' set to 
> "$debugdir:$datadir/auto-load".

If you want to debug Emacs conveniently, you need to take care of that
"warning", because you do need GDB to load .gdbinit.

> (gdb) thread apply all bt full

You need to say "continue" first.  (Doesn't the Abort dialog say so?)

> Thread 1 (Thread 3672.0x16cc):
> #0  0x75abf5be in USER32!SetMessageExtraInfo ()
>    from /c/windows/syswow64/USER32.dll
> No symbol table info available.
> #1  0x75abf5be in USER32!SetMessageExtraInfo ()
>    from /c/windows/syswow64/USER32.dll
> No symbol table info available.
> #2  0x75abcd46 in USER32!SetMessageExtraInfo ()
>    from /c/windows/syswow64/USER32.dll
> No symbol table info available.
> #3  0x00000000 in ?? ()
> No symbol table info available.

Any idea why it says "No symbol table info available"?  There's no -s
switch on the link command line.

Also, why did you use CFLAGS='-g -O0', rather than CFLAGS='-g3 -O0'?
The latter would produce a much richer debug info.  (But I don't think
it has anything to do with the crash or the lack of debug info.)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]