[PATCH]: libstdc++ QNX >= 6.1 support

J.T. Conklin jtc@acorntoolworks.com
Mon Jun 3 13:45:00 GMT 2002


Phil Edwards <phil@jaj.com> writes:
> On Thu, May 30, 2002 at 04:12:35PM -0700, J.T. Conklin wrote:
> > QNX significantly changed their C library between version 6.0 and 6.1.
> > I could change things so the QNX bits are in config/os/qnx/qnx6.1
> > rather than config/os/qnx (like is done for irix, solaris, etc.),
> > which would make it easier if someone wants to add support for the
> > older release.
> 
> Is 6.0 support even feasible for C++?  (I know nothing about QNX; I ask
> only because every time I've seen "significant changes in the system C
> library"-type comments, it usually means the kiss of death for anything
> older.)

QNX 6.0 used their own C library and a earlier version of libstdc++,
in 6.1 they changed to the DinkumWare C and C++ libraries.  You can
see a press release (http://www.qnx.com/news/pr/sep12_00-Dnkw.html)
where they raise all sorts of FUD about the using GNU libraries (I
just found this link today when researching this response and find it
distasteful, to say the least).  

Regardless of their motivation to change the libraries, the end result
was significantly longer compile (modules that used to take 4 minutes
to build took over 40) and run times (various STL primitives are many
times slower).  After no observable progress on this issue for many
months, my company asked me to see if we could have more success by 
taking responsibility for the toolchain in-house.

While there are patches on their web site (if you know where to look),
libstdc++ has changed to such an extent it probably would be easier to
start from scratch.

> If you think it's possible to support 6.0, then the extra directory
> would be preferable.

Then I'll resubmit the patch with the extra directory layer.  It's
unlikely that I'll have enough spare cycles to address 6.0, but it
will make it easier if someone else wants to take on that task.

        --jtc

-- 
J.T. Conklin



More information about the Libstdc++ mailing list