Michael Ost <[EMAIL PROTECTED]> writes:

> The winebuild step triggered by wineg++ is not generating
> __wine_spec_init or __wine_dll_register entry points. These entry points
> *are* made if there are exports in the shared library's spec file. The
> entry points should be pulled in with libwinecrt0.a, since they are
> defined there. But they are not and I can't figure out why.

The problem is that they resolve to the same symbols in the
dll. Something like this should fix it:

Index: dlls/winecrt0/crt0_private.h
===================================================================
RCS file: /opt/cvs-commit/wine/dlls/winecrt0/crt0_private.h,v
retrieving revision 1.3
diff -u -p -r1.3 crt0_private.h
--- dlls/winecrt0/crt0_private.h        2 Sep 2005 14:43:03 -0000       1.3
+++ dlls/winecrt0/crt0_private.h        12 Oct 2005 14:02:15 -0000
@@ -36,6 +36,6 @@ enum init_state
     CONSTRUCTORS_DONE  /* the constructors have been run (implies dll 
registered too) */
 };
 
-extern enum init_state __wine_spec_init_state;
+extern enum init_state __wine_spec_init_state __attribute__((visibility 
("hidden")));
 
 #endif /* __WINE_CRT0_PRIVATE_H__ */

-- 
Alexandre Julliard
[EMAIL PROTECTED]


Reply via email to