Hi -
No, Linux .so shared object libraries don't have an equivalent to "Dllmain()".
I would argue that's a good thing: *nix .so's are simply libraries - they're not trying to be executables, too.
As you probably know, DllMain is usually just an empty stub (Microsoft discourages you from doing any more work than absolutely necessary in DllMain), so perhaps your best bet is to wrap your DllMain in an "#if defined(WIN32)".
These links might help:
http://www.woodtennis.com/win2unix.html
http://en.wikipedia.org/wiki/Library_(computer_science)
Your .. PSM