* Re: using GDB 5 on Solaris 7 with Sun WS5.0
@ 2001-03-23 9:22 Michael Elizabeth Chastain
0 siblings, 0 replies; 6+ messages in thread
From: Michael Elizabeth Chastain @ 2001-03-23 9:22 UTC (permalink / raw)
To: gdb, tanvir.hassan
Hi Tanvir,
> I have heard that someone might have changed GDB to do "lazy" loading
> of symbols by reading them from the *.o instead of the exe and thus
> obviating the need for "-xs", but I don't see any mention of this in
> any of the source.
That is the "partial symtab" (psymtab) code.
> 2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
> ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD to
> handle this? or is there a generic name de-mangling place in the code?)
Recent snapshots of gdb, and the current CVS version of gdb, operate with
the new multi-vendor C++ ABI:
http://reality.sgi.com/dehnert_engr/cxx/cxx-summary.html
If you could provide a URL or an ISO reference number for that "ISO/ANSI
ABI standard", I could check if it's the same as the "new ABI" standard
that we're working on supporting.
Michael Elizabeth Chastain
<chastain@redhat.com>
"love without fear"
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: using GDB 5 on Solaris 7 with Sun WS5.0
@ 2001-03-23 16:02 Tanvir Hassan
0 siblings, 0 replies; 6+ messages in thread
From: Tanvir Hassan @ 2001-03-23 16:02 UTC (permalink / raw)
To: 'Daniel Berlin', Tanvir Hassan
Cc: 'Michael Elizabeth Chastain', gdb
Hmmm. Can I use a c++filt/dem type program that can take mangled names and
produce demangled names to get around the name mangling problem?
Also, I still cannot debug a program unless I include "-xs". Is the psymtab
stuff not meant to deal with non "-xs" code? Or am I stuck using "-xs" to
debug under WS5.0 and GDB on Solaris 7?
-----Original Message-----
From: Daniel Berlin [ mailto:dan@www.cgsoftware.com ]
Sent: Friday, March 23, 2001 2:35 PM
To: Tanvir Hassan
Cc: 'Michael Elizabeth Chastain'; gdb@sourceware.cygnus.com
Subject: RE: using GDB 5 on Solaris 7 with Sun WS5.0
On Fri, 23 Mar 2001, Tanvir Hassan wrote:
> Here's the stuff I get from "man CC" on SunWorkshop 5 C++:
>
> Note that -compat=5 (which lets me use STL) will set the __cplusplus macro
> to "199711L". I don't know if that helps in determining which ABI those
> guys are following. Also, I tried to compile helloworld.cpp with -g and
see
> if the newest snapshot (23/Mar/2001) could debug it without me resorting
to
> -xs and it cannot. Is there an option or config.h option that I need to
> enable psymtab stuff?
Nope.
It's automagic.
>
>
> -compat[=(4|5)]
> Sets the compiler to be compatible with 4.0.1,
> 4.1, and 4.2 compilers; or with full 5.0. This
> option controls the preprocessor __cplusplus
> macro.
>
> The C++ compiler has two principal modes. One
> accepts the semantics and language defined by the
> Annotated C++ Reference Manual (ARM) and used in
> the 4.2 compiler (the compatibility mode, -com-
> pat=4). The other accepts constructs according to
> the ANSI/ISO standard (standards mode, -compat=5).
> These two modes are incompatible with each other
> because the ANSI/ISO standard forces significant,
> incompatible changes in name mangling, vtable lay-
> out, and other ABI details. These two modes are
> differentiated by the -compat option as shown in
> the following values.
You are misreading it. All this means is that they changed their ABI to be
able to support the ISO standard, not that they are using a standard ABI.
They are most certainly not. We have 0 support for their ABI, so you
won't be able to debug in any useful way.
> > Value
Meaning >
> -compat=4 Compile for compatibility with C++
> 4.0.1, C++ 4.1, and C++ 4.2 (Sets
> __cplusplus macro to 1.)
>
> -compat=5 Compile with full C++ 5.0 features.
> (Sets __cplusplus macro to
> 199711L.)
>
> Defaults:
>
> If the -compat option is not specified, -compat=5
> is assumed. If only -compat is specified, -com-
> pat=4 is assumed.
>
> Interactions:
>
> The -xarch=v9 option and the -compat[=4] option
> are not supported when used together.
>
> -----Original Message-----
> From: Michael Elizabeth Chastain [ mailto:chastain@cygnus.com ]
> Sent: Friday, March 23, 2001 9:23 AM
> To: gdb@sourceware.cygnus.com; tanvir.hassan@tumisoftware.com
> Subject: Re: using GDB 5 on Solaris 7 with Sun WS5.0
>
>
> Hi Tanvir,
>
> > I have heard that someone might have changed GDB to do "lazy" loading
> > of symbols by reading them from the *.o instead of the exe and thus
> > obviating the need for "-xs", but I don't see any mention of this in
> > any of the source.
>
> That is the "partial symtab" (psymtab) code.
>
> > 2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
> > ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD
to
> > handle this? or is there a generic name de-mangling place in the code?)
>
> Recent snapshots of gdb, and the current CVS version of gdb, operate with
> the new multi-vendor C++ ABI:
>
> http://reality.sgi.com/dehnert_engr/cxx/cxx-summary.html
>
> If you could provide a URL or an ISO reference number for that "ISO/ANSI
> ABI standard", I could check if it's the same as the "new ABI" standard
> that we're working on supporting.
>
> Michael Elizabeth Chastain
> <chastain@redhat.com>
> "love without fear"
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: using GDB 5 on Solaris 7 with Sun WS5.0
2001-03-23 14:30 Tanvir Hassan
@ 2001-03-23 14:35 ` Daniel Berlin
0 siblings, 0 replies; 6+ messages in thread
From: Daniel Berlin @ 2001-03-23 14:35 UTC (permalink / raw)
To: Tanvir Hassan; +Cc: 'Michael Elizabeth Chastain', gdb
On Fri, 23 Mar 2001, Tanvir Hassan wrote:
> Here's the stuff I get from "man CC" on SunWorkshop 5 C++:
>
> Note that -compat=5 (which lets me use STL) will set the __cplusplus macro
> to "199711L". I don't know if that helps in determining which ABI those
> guys are following. Also, I tried to compile helloworld.cpp with -g and see
> if the newest snapshot (23/Mar/2001) could debug it without me resorting to
> -xs and it cannot. Is there an option or config.h option that I need to
> enable psymtab stuff?
Nope.
It's automagic.
>
>
> -compat[=(4|5)]
> Sets the compiler to be compatible with 4.0.1,
> 4.1, and 4.2 compilers; or with full 5.0. This
> option controls the preprocessor __cplusplus
> macro.
>
> The C++ compiler has two principal modes. One
> accepts the semantics and language defined by the
> Annotated C++ Reference Manual (ARM) and used in
> the 4.2 compiler (the compatibility mode, -com-
> pat=4). The other accepts constructs according to
> the ANSI/ISO standard (standards mode, -compat=5).
> These two modes are incompatible with each other
> because the ANSI/ISO standard forces significant,
> incompatible changes in name mangling, vtable lay-
> out, and other ABI details. These two modes are
> differentiated by the -compat option as shown in
> the following values.
You are misreading it. All this means is that they changed their ABI to be
able to support the ISO standard, not that they are using a standard ABI.
They are most certainly not. We have 0 support for their ABI, so you
won't be able to debug in any useful way.
> > Value
Meaning >
> -compat=4 Compile for compatibility with C++
> 4.0.1, C++ 4.1, and C++ 4.2 (Sets
> __cplusplus macro to 1.)
>
> -compat=5 Compile with full C++ 5.0 features.
> (Sets __cplusplus macro to
> 199711L.)
>
> Defaults:
>
> If the -compat option is not specified, -compat=5
> is assumed. If only -compat is specified, -com-
> pat=4 is assumed.
>
> Interactions:
>
> The -xarch=v9 option and the -compat[=4] option
> are not supported when used together.
>
> -----Original Message-----
> From: Michael Elizabeth Chastain [ mailto:chastain@cygnus.com ]
> Sent: Friday, March 23, 2001 9:23 AM
> To: gdb@sourceware.cygnus.com; tanvir.hassan@tumisoftware.com
> Subject: Re: using GDB 5 on Solaris 7 with Sun WS5.0
>
>
> Hi Tanvir,
>
> > I have heard that someone might have changed GDB to do "lazy" loading
> > of symbols by reading them from the *.o instead of the exe and thus
> > obviating the need for "-xs", but I don't see any mention of this in
> > any of the source.
>
> That is the "partial symtab" (psymtab) code.
>
> > 2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
> > ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD to
> > handle this? or is there a generic name de-mangling place in the code?)
>
> Recent snapshots of gdb, and the current CVS version of gdb, operate with
> the new multi-vendor C++ ABI:
>
> http://reality.sgi.com/dehnert_engr/cxx/cxx-summary.html
>
> If you could provide a URL or an ISO reference number for that "ISO/ANSI
> ABI standard", I could check if it's the same as the "new ABI" standard
> that we're working on supporting.
>
> Michael Elizabeth Chastain
> <chastain@redhat.com>
> "love without fear"
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* RE: using GDB 5 on Solaris 7 with Sun WS5.0
@ 2001-03-23 14:30 Tanvir Hassan
2001-03-23 14:35 ` Daniel Berlin
0 siblings, 1 reply; 6+ messages in thread
From: Tanvir Hassan @ 2001-03-23 14:30 UTC (permalink / raw)
To: 'Michael Elizabeth Chastain', gdb, Tanvir Hassan
Here's the stuff I get from "man CC" on SunWorkshop 5 C++:
Note that -compat=5 (which lets me use STL) will set the __cplusplus macro
to "199711L". I don't know if that helps in determining which ABI those
guys are following. Also, I tried to compile helloworld.cpp with -g and see
if the newest snapshot (23/Mar/2001) could debug it without me resorting to
-xs and it cannot. Is there an option or config.h option that I need to
enable psymtab stuff?
-compat[=(4|5)]
Sets the compiler to be compatible with 4.0.1,
4.1, and 4.2 compilers; or with full 5.0. This
option controls the preprocessor __cplusplus
macro.
The C++ compiler has two principal modes. One
accepts the semantics and language defined by the
Annotated C++ Reference Manual (ARM) and used in
the 4.2 compiler (the compatibility mode, -com-
pat=4). The other accepts constructs according to
the ANSI/ISO standard (standards mode, -compat=5).
These two modes are incompatible with each other
because the ANSI/ISO standard forces significant,
incompatible changes in name mangling, vtable lay-
out, and other ABI details. These two modes are
differentiated by the -compat option as shown in
the following values.
Value Meaning
-compat=4 Compile for compatibility with C++
4.0.1, C++ 4.1, and C++ 4.2 (Sets
__cplusplus macro to 1.)
-compat=5 Compile with full C++ 5.0 features.
(Sets __cplusplus macro to
199711L.)
Defaults:
If the -compat option is not specified, -compat=5
is assumed. If only -compat is specified, -com-
pat=4 is assumed.
Interactions:
The -xarch=v9 option and the -compat[=4] option
are not supported when used together.
-----Original Message-----
From: Michael Elizabeth Chastain [ mailto:chastain@cygnus.com ]
Sent: Friday, March 23, 2001 9:23 AM
To: gdb@sourceware.cygnus.com; tanvir.hassan@tumisoftware.com
Subject: Re: using GDB 5 on Solaris 7 with Sun WS5.0
Hi Tanvir,
> I have heard that someone might have changed GDB to do "lazy" loading
> of symbols by reading them from the *.o instead of the exe and thus
> obviating the need for "-xs", but I don't see any mention of this in
> any of the source.
That is the "partial symtab" (psymtab) code.
> 2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
> ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD to
> handle this? or is there a generic name de-mangling place in the code?)
Recent snapshots of gdb, and the current CVS version of gdb, operate with
the new multi-vendor C++ ABI:
http://reality.sgi.com/dehnert_engr/cxx/cxx-summary.html
If you could provide a URL or an ISO reference number for that "ISO/ANSI
ABI standard", I could check if it's the same as the "new ABI" standard
that we're working on supporting.
Michael Elizabeth Chastain
<chastain@redhat.com>
"love without fear"
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: using GDB 5 on Solaris 7 with Sun WS5.0
2001-03-23 8:58 Tanvir Hassan
@ 2001-03-23 9:09 ` Daniel Berlin
0 siblings, 0 replies; 6+ messages in thread
From: Daniel Berlin @ 2001-03-23 9:09 UTC (permalink / raw)
To: Tanvir Hassan; +Cc: 'gdb@sourceware.cygnus.com'
On Thu, 22 Mar 2001, Tanvir Hassan wrote:
> Hi All!
>
> I am using some 3rd party tools that have basically forced me to run
> SunWorkshop 5.0 on Solaris 7. When I try to use dbx to debug my app (~45Mb
> with -g) it crashes. I have applied all patches to dbx and it still
> crashes. So I have given up on it for now.
>
> Using GDB has exposed several issues:
>
> 1) they say I need to use "-g -xs" which when I use on all .o's in my app
> will make an 800Mb exe and is too ponderous to debug. I have heard that
> someone might have changed GDB to do "lazy" loading of symbols by reading
> them from the *.o instead of the exe and thus obviating the need for "-xs",
> but I don't see any mention of this in any of the source. If anyone knows
> about that Solaris fix, please let me know!
>
> 2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
> ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD to
> handle this?
Um, there is no ISO/ANSI ABI standard.
What are you talking about?
> or is there a generic name de-mangling place in the code?), so
> now at least it is not crashing, but I cannot view any symbols. I tried to
> use the Sun compiler in -compat mode (and GDB DOES understand those mangled
> names), but then I cannot use STL (which is TOTALLY unacceptable).
>
> Thanks!
>
^ permalink raw reply [flat|nested] 6+ messages in thread
* using GDB 5 on Solaris 7 with Sun WS5.0
@ 2001-03-23 8:58 Tanvir Hassan
2001-03-23 9:09 ` Daniel Berlin
0 siblings, 1 reply; 6+ messages in thread
From: Tanvir Hassan @ 2001-03-23 8:58 UTC (permalink / raw)
To: 'gdb@sourceware.cygnus.com'
Hi All!
I am using some 3rd party tools that have basically forced me to run
SunWorkshop 5.0 on Solaris 7. When I try to use dbx to debug my app (~45Mb
with -g) it crashes. I have applied all patches to dbx and it still
crashes. So I have given up on it for now.
Using GDB has exposed several issues:
1) they say I need to use "-g -xs" which when I use on all .o's in my app
will make an 800Mb exe and is too ponderous to debug. I have heard that
someone might have changed GDB to do "lazy" loading of symbols by reading
them from the *.o instead of the exe and thus obviating the need for "-xs",
but I don't see any mention of this in any of the source. If anyone knows
about that Solaris fix, please let me know!
2) the name mangling/vtable scheme of Sun WS5.0 is apparently using the
ISO/ANSI ABI standard and GDB cannot deal with it (it needs an new BFD to
handle this? or is there a generic name de-mangling place in the code?), so
now at least it is not crashing, but I cannot view any symbols. I tried to
use the Sun compiler in -compat mode (and GDB DOES understand those mangled
names), but then I cannot use STL (which is TOTALLY unacceptable).
Is there a version of GDB out there that will work with the output of Sun
WS5.0 CC (the C++ compiler and linker) on Solaris 7? Because the rest of my
software is only certified (and thus only supported) on Solaris 7 with Sun
WS5.0 I am stuck using that toolchain and cannot move to GCC (for now).
Thanks!
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2001-03-23 16:02 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-03-23 9:22 using GDB 5 on Solaris 7 with Sun WS5.0 Michael Elizabeth Chastain
-- strict thread matches above, loose matches on Subject: below --
2001-03-23 16:02 Tanvir Hassan
2001-03-23 14:30 Tanvir Hassan
2001-03-23 14:35 ` Daniel Berlin
2001-03-23 8:58 Tanvir Hassan
2001-03-23 9:09 ` Daniel Berlin
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).