[Top][All Lists]

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

Re: [libunwind] [Q] Build error on Linux/IA64

From: David Mosberger
Subject: Re: [libunwind] [Q] Build error on Linux/IA64
Date: Tue, 23 Sep 2003 12:26:36 -0700

>>>>> On Mon, 22 Sep 2003 16:26:44 -0400, Bharadwaj Yadavalli <address@hidden> 
>>>>> said:

  Bharadwaj> I am trying to build libunwind on a Linux/IA64 box using
  Bharadwaj> gcc and get the following error:

  Bharadwaj> ia64/Ginit-ia64.c: In function `uc_addr':
  Bharadwaj> ia64/Ginit-ia64.c:110: structure has no member named `sc_rbs_base'

This is a sign that your libc header files are old.  The last few entries in
"struct sigcontext" in /usr/include/bits/sigcontext.h should look like this:

  struct ia64_fpreg sc_fr[128]; /* floating-point registers */
  unsigned long int sc_rbs_base;/* NULL or new base of sighandler's rbs */
  unsigned long int sc_loadrs;  /* see description above */
  unsigned long int sc_rsvd[14];/* reserved for future use */

  /* sc_mask is actually an sigset_t but we don't want to
   * include the kernel headers here. */
  unsigned long int sc_mask;    /* signal mask to restore after handler returns 

You can do one of several things:

 - upgrade to a newer libc
 - patch /usr/include/bits/sigcontext.h
 - install a patch version of /usr/include/bits/sigcontext.h in

Perhaps I should add an autoconf test for this issues, but I'm not
sure it's worth it, because old libc's tend to have rather bad unwind
info anyhow.

Hope this helps,


reply via email to

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