Why is the C++ standard library bundled with the compiler instead of the os?

The basic reason is that there is no standard C++ ABI — every compiler tends to have its own ABI that is different from and incompatible with that of other compilers. On the other hand, most OSes define a standard C ABI that they use and supply a standard C library for, and all C compilers for that OS support that ABI.

Leave a Comment