Re: [boost] [Boost 1.41: list_of] Boost compliation error, > Sun Studio 11 using standard C++ lib

From the sound of this, it is nearly impossible to compile boost using SS11 with stdlib without some sort of complier-hack. I'm not the only user using the environment so hacking the complier would not be a viable solution. And my lib has to work with another third-party lib which specifically mentioned that they do not support the use of stlport. i'm not ready to take the responsibility of causing any problem to a third-party lib if any do arise. So i guess my only choice is to switch to GCC if i need to work on Solaris and use Boost (1.36+)? What is the drawback for using GCC? The only thing that i know of between GCC and SS is that GCC's complier is slower, any other reason why one would prefer SS over GCC?
Many thanks for other useful comments as well and i really appreciate all of them.
Message: 6 Date: Sun, 3 Jan 2010 14:02:55 -0500 From: Stefan Teleman <stefan.teleman@gmail.com> To: boost@lists.boost.org Subject: Re: [boost] [Boost 1.41: list_of] Boost compliation error, > Sun Studio 11 using standard C++ lib Message-ID: <1ccb59a21001031102t3384061m21c45e19d3a877@mail.gmail.com> Content-Type: text/plain; charset=UTF-8
On Sun, Jan 3, 2010 at 13:45, shing fan <shingfan@hotmail.com> 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.
This is what you needed to do for boost 1.33.1 to get it to compile with Studio 12:
http://kdesolaris-svn.cvsdude.com/branches/BOOST/1.33.1/Solaris/
see the README.Solaris file.
I haven't tried building more recent boosts with libCstd.so.1 since then.
You can build most of boost 1.40.0 with Studio 12 [ with the latest patches ] and the Apache Standard C++ Library 4.2.1, which is available in Solaris/Nevada builds, but not in Solaris 10.
There are several boost libraries which do not compile with either Studio 12 or Studio 12 Update 1, even with the Apache Standard C++ Library combination above. One library which pops in my mind right now is Boost.Interprocess -- it requires C++0x compiler features [ rvalue refs ], and this feature is not yet available with Sun Studio.
You can build recent boosts with GCC 4.3.x on Solaris. Please keep in mind that GCC C++ binaries are ABI incompatible with Sun Studio C++ binaries, and you will not be able to mix and match compilers.
HTH,
--Stefan
-- Stefan Teleman KDE e.V. stefan.teleman@gmail.com
Get a great deal on Windows 7 and see how it works the way you want. Check out the offers on Windows 7now. _________________________________________________________________ Windows Live: Keep your friends up to date with what you do online. http://go.microsoft.com/?linkid=9691815

On Sun, Jan 3, 2010 at 22:41, shing fan <shingfan@hotmail.com> wrote:
From the sound of this, it is nearly impossible to compile boost using SS11 with stdlib without some sort of complier-hack. I'm not the only user using the environment so hacking the complier would not be a viable solution. And my lib has to work with another third-party lib which specifically mentioned that they do not support the use of stlport. i'm not ready to take the responsibility of causing any problem to a third-party lib if any do arise. So i guess my only choice is to switch to GCC if i need to work on Solaris and use Boost (1.36+)? What is the drawback for using GCC? The only thing that i know of between GCC and SS is that GCC's complier is slower, any other reason why one would prefer SS over GCC?
Many thanks for other useful comments as well and i really appreciate all of them.
There really is no drawback in using GCC. If you are running on SPARC and are concerned about the default GCC SPARC optimizer, you can download GCCFSS from here: http://cooltools.sunsource.net/gcc/index.html The only restriction is: Studio- and GCC- generated binaries are ABI incompatible. So, you won't be able to build Boost with GCC, and the rest of the software with Studio, and link. Also, C++ shared libraries provided in Solaris are built with Sun Studio. The same restriction explained above applies. --Stefan -- Stefan Teleman KDE e.V. stefan.teleman@gmail.com
participants (2)
-
shing fan
-
Stefan Teleman