On Wednesday 05 October 2005 21:44, Alexandre Julliard wrote:
Robert Lunnon bobl@optushome.com.au writes:
Yes, thats the way I see it, from what I can see winegcc is being called with -shared but is not emitting -shared in the subsequent gcc command and includes libwinecrt0.a which would be wrong for linking a shared library. Seems winegcc is broken.
Including libwinecrt0.a is correct, it contains the runtime for both dlls and exes. The -shared flag is not defined in LDDLLFLAGS for Solaris, so it sounds that it's the configure check that is wrong.
Yes, fixed that but the linker still insists on including main() in the shared library. If I remove libwinecrt0.a from the link then the link goes OK and nm shows no references to main() in the shared library. Perhaps wine should have different runtime startofffs for shared objects and executables like gcc does for executable objects now at least this will remove any reliance on linker behaviour?