Subject: Re: What flags should I use, -mthread, -mthreads, -lmmalloc, .... ?
From: Robert Collins <[email-masked]>
To: jgkarman <[email-masked]>
Cc: [email-masked]
Date: 12 Sep 2001 00:14:26 +1000

On Tue, 2001-09-11 at 17:55, jgkarman wrote:
> Hello,
> 
> I'm trying to port a program to Windows95, using cygwin 1.3.2. It 
> consists of a GUI displaying data that are calculated by a background 
> process, and uses templates in a multithreaded environment. It keeps 
> crashing with a segfault when allocating memory for a template, either 
> my own or standard templates like std::vector. BTW, the same program 
> runs flawlessly for more than a week under linux. 

1.3.2. is broken for threading :-[. grab a developers snapshot for now,
1.3.3 will be out RSN.

> I looked in the users manual, but found no information for either 
> mmaloc or -mthread(s), nor did I find any other hints for using 
> templates in a multithreaded program.
> 
> Can anyone tell me what more I could try, or better yet: what the 
> magical flags are to make everything work?

Have a read of the list archives, there was a problem some time ago with
C++ exception handling due to the gcc compiler not being built with a
thread model. I'm not sure if that has been put into production or not
at this point. 

You can also build a debug cygwin .dll and try to get a backtrace of the
crash. If you can pin down the function responsible things may become
clearer as to the problem.

Once you've moved beyond 1.3.2 things may just magically work though so
that should be your first step.

Rob

--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Bug reporting:         http://cygwin.com/bugs.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/