Réduire
Brouillon
0
11/07/2013
0

Problème avec la lib STLport4 et Cstd

Mots-clés:
C++

Cstd and STLport4 libraries cannot be mixed - if one part/library of a program is linked with the stlport lib, then all other parts should be linked with it, otherwise there will be troubles.:
Quote from Sun Studio 12: C++ User's Guide:
"STLport is binary incompatible with the default libCstd. If you use the STLport implementation of the standard library, then you must compile and link all files, including third-party libraries, with the option -library=stlport4."
(http://docs.sun.com/app/docs/doc/819-5267/bkakg?a=view

http://cmake.org/Wiki/STL_clash_between_VTK_and_ITK_on_Solaris

The Sun C++ compiler uses libCstd by default. If binary compatibility with existing object files is required, or if the application links with several other libraries that were built using libCstd thenlibCstd should be used for building the application. The drawback is that the application cannot use the features that are missing in libCstd.
libstlport provides an implementation that is much closer to the standard. If an application needs the functionality that is missing in libCstd then libstlport can be used. However, note that both libCstd and libstlport cannot be used in the same application. If the application is built with -library=stlport4 then all libraries that are linked with the application and that use the standard C++ library functions should also be built with -library=stlport4. This may not always be possible if some third party libraries are used. The user may have to ask the third party vendors to provide libraries built with -library=stlport4.
http://developers.sun.com/solaris/articles/cmp_stlport_libCstd.html