Alan DuBoff wrote:
> What about other programs that are linked against either library? Will > they play well together? Unfortunately, no. The two libraries are mutually exclusive. Linking a program against both libraries will result in undefined behavior, and the program will most likely not work, behave strangely, or crash. Also, linking a program against libraries which in turn link against both Sun libCstd.so and the Apache/RogueWave Standard C++ library also will not work. > Does this mean that the entire stack which runs together, must be > compiled with the same? IOW, if someone wanted to write a kde app, would > they be required to use the same Apache/RogueWave Standard C++ Library? Yes, unfortunately this is a very restrictive requirement. The class instances defined in these libraries will have different sizes, and they are incompatible. The symbol conflict is similar to linking a program against two different and incompatible versions of the Standard C Library. > This might be a dumb question, but what about getting the compiler folks > to change Studio 12 to be 100% compliant with the ANSI/ISO C++ Standard? > > This would allow us to use the libCstd.so from Sun, right? I did ask -- the problem is that making libCstd.so 100% Standard compliant will break binary compatibility. Studio 12 itself is very close to being 100% Standard compliant. libCstd.so is not, because it must stay compatible with older versions of Workshop/Forte/Studio, going back to Workshop 5. --Stefan -- Stefan Teleman Sun Microsystems, Inc. Stefan.Teleman at Sun.COM
