Open wbhart opened 6 years ago
We found the pull request [1] related to rtti and tried enabling rtti by setting the JULIA_CXX_RTTI environment variable before starting Julia.
That actually works for some of us, but not others. In my case it complains:
error: run-time type information was disabled in PCH file but is currently enabled
<built-in>:1:10: fatal error: 'Cxx.h' file not found
#include "Cxx.h"
^
I see from the comments on the PR that this is a difficult issue to resolve. I'm sure you are already aware of it, but I thought it best to report it, as others will likely encounter the same.
Apparently, despite what is said in that PR, rebuilding Cxx is still required after changing this environment variable. It now works on my machine.
We are trying to interface to a large C++ library, called polymake [1]. Unfortunately, Cxx does not seem to like the C++14 header files for that project. See the full error messages at the end of this post.
The problem seems to be that clang is essentially reading the header files with -fno-rtti.
I tried setting use_rtti = true in Cxx's bootstrap.cpp and rebuilding Cxx, which prevents the error, but now it cannot find any symbols in the library.
Does rtti cause clang to further decorate symbol names?
RTTI is apparently a standard feature of C++ and numerous basic features of the language rely on it. Is there some hope it could be turned on and supported?
[1] https://polymake.org/doku.php