emacs-pretest-bug
[Top][All Lists]
Advanced

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

Re: gdb emacs reporting 'Function "x_error_quitter" not defined'


From: Andrew M. Scott
Subject: Re: gdb emacs reporting 'Function "x_error_quitter" not defined'
Date: Fri, 21 Jan 2005 13:32:21 -0700

>>>>> "Andy" == Andrew M Scott <address@hidden> writes:
>>>>> "Nick" == Nick Roberts <address@hidden> writes:

    >>> DISPLAY = chlr4917:2.0
    >>> TERM = dumb
    >>> Breakpoint 1 at 0x80e7126
    >>> Function "x_error_quitter" not defined.
    >>> (gdb)
    >>> 
    >>> This would seem to be probably a GDB bug. Can you report it
    >>> to address@hidden

    Nick> Or, more likely, its a compiler problem. If the executable doesn't 
have the
    Nick> symbol x_error_quitter, GDB can't be expected to find it.

    Nick> What happens if you do (in build/src):

    Nick> nm emacs | grep x_error_quitter

    Nick> you should get something like:

    Nick> 080e6b6c t x_error_quitter

    Nick> If you get nothing perhaps the local symbols are missing 
(x_error_quitter is
    Nick> local to xterm.c).

    Andy> Thanks, Richard & Nick.

    Andy> $ cd build/src
    Andy> $ nm emacs | grep x_error_quitter
    Andy> Exit 1

    Andy> $ nm emacs | grep quitter
    Andy> 080ca2a0 t x_io_error_quitter

    Andy> $ nm xterm.o | grep quitter
    Andy> 0000cdc0 t x_io_error_quitter

    Andy> This seems to indicate that it's a compilation problem, not GDB.

    Andy> I don't understand how xterm.o can have x_io_error_quitter but *not*
    Andy> x_error_quitter

    Andy> I'm using gcc 3.4.2

    Andy> $ gcc --version
    Andy> gcc (GCC) 3.4.2
    Andy> Copyright (C) 2004 Free Software Foundation, Inc.
    Andy> This is free software; see the source for copying conditions.  There 
is NO
    Andy> warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR 
PURPOSE.

I repeated my build of Emacs-21.3.50 with the same input but using various 
versions
of gcc I have available; gcc versions 2.95.3 and 3.3.2 correctly have 
x_error_quitter in 
xterm.o, but the newer gcc 3.4 and 3.4.2 do not!

compiling with gcc 2.95.3
$ nm xterm.o | grep quitter
00007fc8 t x_error_quitter
00008060 t x_io_error_quitter

Compiled with gcc 3.3.2
$ nm xterm.o | grep quitter
00009570 t x_error_quitter
00009630 t x_io_error_quitter

Compiled with gcc 3.4
$ nm xterm.o | grep quitter
0000c620 t x_io_error_quitter

Compiled with gcc 3.4.2
$ nm xterm.o | grep quitter
0000c5f0 t x_io_error_quitter

I'm not sure what to do next.
Andy Scott









reply via email to

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