This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: How to compile with gcc/cygwin for "multithreaded DLL" access?
- From: Brian Dessent <brian at dessent dot net>
- To: cygwin at cygwin dot com
- Date: Wed, 23 Mar 2005 23:05:51 -0800
- Subject: Re: How to compile with gcc/cygwin for "multithreaded DLL" access?
- Organization: My own little world...
- References: <65213341217E8D458E7C78E6640C749504FABFCF@waglmb01.labs.agilent.com>
- Reply-to: cygwin at cygwin dot com
jeff_burch@agilent.com wrote:
> cygcheck testSicl.exe
> Found: .\testSicl.exe
> testSicl.exe
> C:\cygwin\bin\cygwin1.dll
> C:\WINDOWS\system32\ADVAPI32.DLL
> C:\WINDOWS\system32\ntdll.dll
> C:\WINDOWS\system32\KERNEL32.dll
> C:\WINDOWS\system32\RPCRT4.dll
> .\SICL32.dll
> C:\WINDOWS\system32\VERSION.dll
> C:\WINDOWS\system32\MSVCR70.dll
<http://cygwin.com/faq/faq.html#SEC98>
It's pretty much guaranteed that your program will crash and burn if it
links against both Cygwin1.dll and MSVCRT*.DLL. They both provice a C
runtime, and trying to mix two implementations of that same runtime is a
no-no.
It looks like this sicl32 dll was linked against msvcrt, so you'll have
to recompile it against cygwin1.dll.
(insert friendly reminder here that anything that links with Cygwin1.dll
must be released under GPL or other OSI-approved license)
If you don't have the source for sicl32.dll and you're trying to create
a program that depends on both it and Cygwin1.dll, then you're probably
violating a license somewhere.
Brian
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Problem reports: http://cygwin.com/problems.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/