title: Is the "C++ dlopen mini HOWTO" the recommended technique for compiling dynamically loaded C++ plugin libraries?
body: <p>By Plugin.<br>
  We mean a library that is loaded vi <code>dlopen()</code> and its symbols resolved via <code>dlsym()</code> (not a standard shard library that is dynamically loaded by the runtime system).</p>
  
  <p>Referring to <a href="http://www.isotton.com/howtos/C++-dlopen-mini-HOWTO/" rel="nofollow">http://www.isotton.com/howtos/C++-dlopen-mini-HOWTO/</a>. The document was last updated in 2006. It recommends the use of <code>extern "C"</code> to prevent mangling of function names, so that <code>dlsym</code> can find its functions with relative ease.</p>
  
  <p>Is this still relevant for dynamic libraries? In my particular case, I am trying to create a dynamic library on OSX using libtool. Perhaps using <code>__attribute__ ((constructor))</code> is more hip and modern, I have had little success discovering the recommended practice.</p>