[openbeosstorage] Re: libstdc++.r4.so
- From: "Axel Dörfler" <axeld@xxxxxxxxxxxxxxxx>
- To: openbeosstorage@xxxxxxxxxxxxx
- Date: Wed, 28 Jul 2004 10:39:27 +0200 CEST
Hi Oliver,
Oliver Tappe <zooey@xxxxxxxxxxxxxxx> wrote:
> I have been wrestling with the OBOS^H^H^H^HHaiku-provided
> libcppunit.so for
> several days only to find out that the crashes I observed were in
> fact
> caused by the buggy std::string implementation living in libstdc++
> .r4.so.
> If anyone is interested, I have a small testprogram that exposes the
> bug(s)
> (on my machine).
Sure, that would be nice to have! Can you add it to our tests?
> Googling the net for more info on this didn't bring up much, but
> brought me
> here instead, to throw my 2cw into the discussion:
>
> I learned from the archives that Haiku doesn't yet have libstdc++
> .r4.so but
> needs one, as several parts are already using it. This lib must be
> binary
> compatible with the one from R5. Someone mentioned that the source
> for the
> R5-version isn't available, but I wonder if this really is true. I
> (maybe
> naively) think that libstdc++.r4.so is just a collection of template
> instantiations, so the source is actually found in the headers...
I'm afraid it's a bit more, looking at the symbols it exports.
> If that's true, it should be possible to recreate the library like
> this:
> 1. find out which templates are actually contained in libstc++.r4.so
> 2. write a little tool that explicitly instantiatiates all the
> required
> templates, and bundles them into a lib.
>
> During my tests, I have found out that Zeta (maybe Dano, too)
> provides a
> different libstc++.r4.so, which contains a fixed std:string
> implementation.
> Surprisingly, the Zeta-version seems to contain a different set of
> template-instantiations, as I needed to relink to get my testprograms
> started.
Hm, do you mean you had to recompile with Zeta headers, or that you
couldn't run your executable on Zeta?
> During the next days, I will try to find out the exact differences
> between
> these two libraries and I will check if there's a way to extract a
> lib from
> the Zeta-(STL-)headers that is binary compatible with (but not as bad
> as)
> the R5-version.
I thought that we could take the most up-to-date libstdc++ from GCC and
compare it's headers with the Be version. If they are reasonable
similar, it might be a good idea to take that GCC version and transform
it to a compatible one.
BTW the main reason to switch to glibc's libio code was compatibility
with libstdc++.r4 (and compatibility with other apps, too, of course :-
))
> Please shout if this is pointless...
I hope it's not - we definitely need this library rather now than
tomorrow :-)
If you need any more help, please shout, too :)
Do you already have access to our CVS repository? Do you want one?
Bye,
Axel.
- Follow-Ups:
- [openbeosstorage] Re: libstdc++.r4.so
- From: Oliver Tappe
- References:
- [openbeosstorage] libstdc++.r4.so
- From: Oliver Tappe
Other related posts:
- » [openbeosstorage] libstdc++.r4.so
- » [openbeosstorage] Re: libstdc++.r4.so
- » [openbeosstorage] Re: libstdc++.r4.so
- » [openbeosstorage] Re: libstdc++.r4.so
- [openbeosstorage] Re: libstdc++.r4.so
- From: Oliver Tappe
- [openbeosstorage] libstdc++.r4.so
- From: Oliver Tappe