public inbox for pthreads-win32@sourceware.org
 help / color / mirror / Atom feed
From: "vc" <vcotirlea1@hotmail.com>
To: <pthreads-win32@sources.redhat.com>, "Brian Bazyk" <bnbazyk@ucdavis.edu>
Subject: Re: CRT runtime error with .Net 2003
Date: Fri, 12 Mar 2004 11:17:00 -0000	[thread overview]
Message-ID: <BAY2-DAV26K1VP9aV6N00025830@hotmail.com> (raw)
In-Reply-To: <200403112330.i2BNU2Oh004379@phaenicia.ucdavis.edu>

Hi Brian,

I have never tried to use pthread as a static lib, so I can't help you here.
But if you use the pthread as a dll, and if you use the /MT flag,
one of it's tests will fail, so for a dll you have to use the /MD flag.

Nevertheless, you should use for your app the same flag /MT or /MD
for _all_ the modules involved, otherwise you can get into trouble.

Viv

----- Original Message -----
From: "Brian Bazyk" <bnbazyk@ucdavis.edu>
To: <pthreads-win32@sources.redhat.com>
Sent: Friday, March 12, 2004 12:30 AM
Subject: CRT runtime error with .Net 2003


>
> Hi, I'm very new here but you seem like a helpful bunch of people.  I have
> the glorious job of porting a Linux application that uses pthreads to
> Win32 .Net 2003.
>
> The app used pthreads so I'm linking statically with the pthreadsVC
> library.  I'm compiling with MTd runtime's and using
> IgnoreLib:libcmtd;libmmt to deal with some redefined function issues.
>
> I'm recieving a runtime write segfault on the line:
> fprintf(stderr,"Program usage: %s <prediction file>.pred | <PDB
> file>.pdb\n",argv[0]);
>
> Debugging at the segfault gives me (_file.c):
>
> void __cdecl _lock_file (
>         void *pf
>         )
> {
>         /*
>          * The way the FILE (pointed to by pf) is locked depends on
whether
>          * it is part of _iob[] or not
>          */
>         if ( (pf >= (void *)_iob) && (pf <= (void *)(&_iob[_IOB_ENTRIES-
> 1])) )
>             /*
>              * FILE lies in _iob[] so the lock lies in _locktable[].
>              */
>             _lock( _STREAM_LOCKS + (int)((FILE *)pf - _iob) );
>         else
>             /*
>              * Not part of _iob[]. Therefore, *pf is a _FILEX and the
>              * lock field of the struct is an initialized critical
>              * section.
>              */
> !!ThisLine!!  EnterCriticalSection( &(((_FILEX *)pf)->lock) );
> }
>
> Any idea what's wrong with my CRT?  Are there any particular linker
> options or something else I may not be aware of?  Could this even be
> related to pthreads or is it something else wrong with the project.
> Any ideas would be appreciated.
>
> Thanks in advance,
> ~Brian
>

      parent reply	other threads:[~2004-03-12 11:17 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-03-11 23:30 Brian Bazyk
2004-03-11 23:57 ` Mark Weaver
2004-03-12 11:17 ` vc [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BAY2-DAV26K1VP9aV6N00025830@hotmail.com \
    --to=vcotirlea1@hotmail.com \
    --cc=bnbazyk@ucdavis.edu \
    --cc=pthreads-win32@sources.redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).