Mirror of the gdb-patches mailing list
 help / color / mirror / Atom feed
From: Joel Brobecker <brobecker@adacore.com>
To: Klaus Zeitler <kzeitler@alcatel-lucent.com>
Cc: gdb-patches@sourceware.org
Subject: Re: CVS build for Solaris 5.8 fails: elfcore_write_prpsinfo undefined
Date: Sat, 01 Nov 2008 22:18:00 -0000	[thread overview]
Message-ID: <20081101221748.GC15606@adacore.com> (raw)
In-Reply-To: <20081101011851.GA15606@adacore.com>

> > Undefined                       first referenced
> >  symbol                             in file
> > elfcore_write_prpsinfo              libgdb.a(procfs.o)
> > elfcore_write_prstatus              libgdb.a(procfs.o)
> > ld: fatal: Symbol referencing errors. No output written to gdb
> 
> I can reproduce. Looks like a problem in the bfd configure script,
> as the following check returns "no":
> 
>   AC_CHECK_HEADERS(sys/procfs.h)

Pedro reminded me that he actually had already seen the problem:
http://sourceware.org/ml/gdb-patches/2008-10/msg00283.html.

The problem is that _FILE_OFFSET_BITS is being defined to 64
in order to provide the capability of handling "large files".
The problem is that procfs on solaris clearly does not work
with the large-file environment activated. The error message
is pretty clear about that, I think:

 #if !defined(_LP64) && _FILE_OFFSET_BITS == 64
 #error  "Cannot use procfs in the large file compilation environment"
 #endif

This problem was introduced when we started using the AC_SYS_LARGEFILES
macro (patch checked in Sep 11). The work-around is to configure GDB
with --disable-largefile.

I'm not sure what the optimal fix should be. Looks like we cannot have
the two features at the same time on Solaris (I checked version 8, 9
and 10, both sparc and x86). To me, the simplest is to deactivate
AC_SYS_LARGEFILES in bfd for Solaris hosts (unless configured with
--enable-largefile perhaps?).

An alternative is to conditionalize the code in GDB that uses
elfcore_write_prpsinfo and elfcore_write_prstatus. GDB would
then build again, but I think that GDB would then generate core
files which would be missing some pieces that it used to contain.
So I'm not keen on this approach.

Any other suggestion?

-- 
Joel


  reply	other threads:[~2008-11-01 22:18 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-31 17:57 Klaus Zeitler
2008-11-01  1:19 ` Joel Brobecker
2008-11-01 22:18   ` Joel Brobecker [this message]
2008-11-01 23:31     ` Daniel Jacobowitz

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20081101221748.GC15606@adacore.com \
    --to=brobecker@adacore.com \
    --cc=gdb-patches@sourceware.org \
    --cc=kzeitler@alcatel-lucent.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox