uClibc++ and LSB compliance.

Garrett Kajmowicz gkajmowi at tbaytel.net
Sat Oct 1 23:11:43 UTC 2005


After looking at the questions regarding LSB compliance, I thought I'd peruse 
the LSB spec to see if uClibc++ would conform.

After looking at it, I can easily say not at all.  This is for a number of 
reasons:

1)  It requires the C++ library to be called libstdc++.so.6 which I do not do.

2)  It codifies (pardon the pun) the exact, current, libstdc++ internals at 
the binary level.  In short, the only way to get LSB compliance is to rewrite 
an exact copy of the current library.  uClibc++ is (mostly) API compatible.  
Differences are due to lack of implemented features.  However, where space 
savings are observed is due to different internal representations, and thus a 
completely different ABI.


Up until now I had thought very little of LSB - I compile from source so 
binary compatibility doesn't bother me.  However, their complete dependency 
on the current implementation of libstdc++ is quite disgusting - C++ 
templates do not readily lend themselves to ABi compatibility, and any 
attempt to do so seems to be sheer folly.


-     Garrett



More information about the uClibc mailing list