Re: GDB is broken on systems with readline built without -fexceptions
Pedro Alves <[email protected]>
| Newsgroups | gmane.comp.gdb.devel |
|---|---|
| Message-ID | <[email protected]> |
On 02/09/2019 01:28 AM, Brian Vandenberg wrote:
> On 04/21/2016 03:31 PM, Pedro Alves wrote:
> > Forgot to qualify "broken". The symptom is:
> >
> > (gdb) whatever-command-that-causes-an-error
> > terminate called after throwing an instance of 'gdb_exception_RETURN_MASK_ERROR'
> > Aborted
> > $
> >
> A proper fix is turning out to be more complicated than I'd hope,
> so in the mean time, to get things working again, I flipped gdb's
> TRY/CATCH mechanism back to setjmp/longjmp instead of C++ try/catch,
> again.
> You should no longer need the --enable-build-with-cxx=no workaround.
> Thanks,
> Pedro Alves
>
>
Note that the original problems that led to that "broken" above have
been fixed, a long while ago.
> I'm still waiting for IT to get me the 8.2 source so I can try that version, but in the meantime: I'm seeing this error in Solaris 10 (sparc) with 8.1.1. I built gdb configured like this:
>
> /path/to/src/configure \
> --prefix=/install/path \
> --enable-plugins \
> --enable-tui \
> --with-python=yes \
> --disable-largefile \
> --without-system-readline \
> --enable-64-bit-bfd \
> --with-expat \
> --with-libexpat-prefix=/opt/csw \
> --with-x \
> LDFLAGS="$(echo -n -Wl,-{L,R}/opt/csw/lib)" \
> {CFLAGS,CPPFLAGS,CXXFLAGS}=-isystem/opt/csw/include
>
> I don't recall the rationale behind all of the above options. Some of them came from how the folks at opencsw.org <http://opencsw.org> build GDB, others were me just banging on it until it compiled successfully (perhaps to my own detriment).
>
> If you can offer any suggestions I would appreciate it.
I'd suspect that this happens because GDB is built/linked with
"-static-libstdc++ -static-libgcc", and that doesn't work
correctly on Solaris. ISTR that we observed that on other
ports as well.
Thanks,
Pedro Alves