Why disabling RTTI is a bad thing in libraries installed using package manager...

in #programming4 years ago

RTTI is run-time type information... It is used in C++ and similar languages when one variable type needs to be converted to another variable type or if the code needs to know the type of the variable.

At least on Ubuntu, there is library packages built without RTTI (most notably librocksdb). This will cause link failure if program that has RTTI enabled tries to link against that library. To avoid these kinds of issues, a lot of third-party programs have compiled the same library from sources instead. This can trigger lengthy rebuild if some of the build files are modified.