Hi Richard,
As system.h is supposed to only include system headers and do nothing else it has to be prepared to be included from C++ already, so no extern "C" wrapping should be necessary for it.
it defines fancy_abort. Not wrapping system.h in extern C results in undefined symbol: _Z11fancy_abortPKciS0_ when loading the plugin. Ciao, Duncan.