Veja a nota para
dynamic_cast
, throw
, typeid
não funciona com bibliotecas compartilhadas
na página de perguntas frequentes do GCC. Porque você está usando
dlopen()
, você precisa vincular seu executável com o -E
flag (ou passe-Wl,-E
para g++
se g++
está invocando o linker) e passe o RTLD_GLOBAL
sinalizar para dlopen()
.