
On 01/03/2010 11:45 AM, shing fan wrote:
So, with limited resources (time, labour, and technical expertise on complier), would it be safe to assume that i should pursue other routes (e.g. boost with gcc or with stlport) and not continue with the beast (compling boost with libCstd?). Your professional opinion is much appreciated.
C++ on Solaris is a bit of a lost cause at the moment. The near-term route that we have decided to take is to abandon Sun Studio altogether and focus on porting to GCC on Solaris using the GCC package from Blastwave. I encourage others to consider doing the same. The issue that you will run into with both Sun Studio & stlport and with GCC is that neither has working locale support on Solaris. This is not an immediate issue for us so it was a reasonable compromise. My understanding is that locale support should be working in the near future with "regular" GCC on Solaris using the --enable-clocale=ieee_1003.1-2001 option. Longer term, we do not think Sun Studio is a viable platform for C++ development. In the near future Sun will have to support Sun Studio with 3 C++ standard libraries as they have stated publicly that they will be adding Apache's libstdcxx (but not when). This is an untenable position for third-party library developers (whether open or proprietary). None of the three libraries are binary compatible, so every third-party library one uses must be compiled with the same library. Additionally, Sun will either have to wait to include the Apache libstdcxx until c++1x is ratified and their compiler & library supports all its features or it will have to support a 4th C++ standard library. However, given Sun's history with C++ support, the option they are most likely to choose is to have a broken C++ implementation that doesn't support all of c++1x for the next decade. GCCfss from Sun is another alternative, but it appears to be at a crossroads with GCC's recent license change. Sun can no longer modify GCC to produce IL code for their compiler back-end without also releasing those tools under the GPL. Last I checked, this did have working locale support. This is really the only working C++ implementation on Solaris at this point. But its lifespan appears to be rather limited. Rob