I’ve built clang 6.0.1 from source and I’m working on a clang plugin.
I’m confused about the usage of REQUIRES_RTTI.
the cmake flag LLVM_ENABLE_RTTI is used to generate llvm/clang build files with/without rtti.
When is REQUIRES_RTTI supposed to be used and how? When building llvm/clang or when using clang to build regular software that relies on rtti? Do I have to pass it to eg. ninja or cmake? If cmake, why have REQUIRES_RTTI and LLVM_ENABLE_RTTI?
I’ve also seen LLVM_REQUIRES_RTTI in the llvm/lib/Transforms/Hello/CMakeLists.txt…
My concrete problem is with loading a plugin which contains an llvm::opt. (unresolved symbol for vtable to llvm::parser).
I don’t understand why it’s not working.
llvm/clang are built without rtti (LLVM_ENABLE_RTTI=OFF) and the plugin is also built with -fno-rtti and has only dependencies to llvm libs and std headers (#include ).