I'm doing all this to try to work around bug <http://bugzilla.mozilla.org/show_bug.cgi?id=75607> "Can't create factories for several components in embedding case". Please see the bug for background. It turns out that Factory creation somehow gets messed up when I link my app with -lwidget_gtk on Unix. My workaround is to remove -lwidget_gtk from my link line and get the necessary symbol at runtime using PR_LoadLibrary/PR_FindSymbol. This works on Solaris, but not on linux. For soe reason, the symbol I'm looking for, "handle_gdk_event", isn't found on Linux, even though it shows properly in nm, and PR_LoadLibrary returns ok. [edburns@dsl199-33 components]$ nm libwidget_gtk.so | grep handle_gdk_event 00048b54 T handle_gdk_event__FP9_GdkEventPv [edburns@dsl199-33 components]$ c++filt handle_gdk_event__FP9_GdkEventPv handle_gdk_event(_GdkEvent *, void *) Can someone please help me with this? Ed -- Remove REMOVE_THIS from email address before replying. These are my views, and may not be the same as Sun Microsystems Inc.