delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2003/03/12/01:46:45

Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com
X-Originating-IP: [68.100.60.50]
From: "Tim Renner" <l0ci AT hotmail DOT com>
To: cwilson AT ece DOT gatech DOT edu
Cc: cygwin AT cygwin DOT com
Subject: Re: Bug: Win32 GTK binaries and Cygwin heap error
Date: Wed, 12 Mar 2003 01:46:25 -0500
Mime-Version: 1.0
Message-ID: <F157s60naVNpqfvYn630000c6b5@hotmail.com>
X-OriginalArrivalTime: 12 Mar 2003 06:46:26.0171 (UTC) FILETIME=[1A6024B0:01C2E863]

>Tim Renner wrote:
>
>>-- TEST SETUP --
>>
>>Setup a cygwin environment via the cygwin installer from
>>http://www.cygwin.com/setup.exe, making sure to install libiconv
>>
>>To set up GTK+ 2.2, get these packages....
.
.
.
>
>this will not work.  Those gtk libraries are native windows.  They use 
>system runtime functions provided by msvcrt.dll (e.g. printf, fopen, etc).
>
>if you compile an application using the cygwin gcc, it will by default link 
>against cygwin1.dll, and your application will use the printf, fopen, etc 
>functions provided by cygwin1.dll.
>
>If you build a program under cygwin, and link to those nativewindows gtk 
>libraries, you will get a program that uses BOTH cygwin1.dll AND msvcrt.dll 
>to resolve runtime calls.  Boom.
>
>You need to use 'gcc -mno-cygwin' -- or better yet, follow Tor's 
>instructions and use the MSYS/mingw system and not cygwin.
>
>Regardless, your problem is not mixing two different cygwin dlls.  It's 
>mixing cygwin1.dll runtime and msvcrt runtime in the same executable.

Unfortunately, we have a case where we need to use Cygwin to compile our 
project because we need the unix and posix support, so -mno-cygwin is out... 
AND we need to link to GTK libraries that do not require an X-server.  What 
gets me though is that this DOES work with the older dll, but not with the 
newer ones...  I'd like to know what changed to cause this difference and if 
it is a bug or if we just got lucky with the old version ;)

What I'm seeing for dependencies (Using depends.exe on my test program) is 
that it depends on Cygwin1.dll and kernel32.dll, as well as 
libgtk-win32-2.0-0.dll, which does depend on msvcrt.dll, but not 
cygwin1.dll.  I'm no expert on dll's, so I don't know if that will cause a 
problem, but from what I understand, that seems okay?

-Tim

_________________________________________________________________
The new MSN 8: advanced junk mail protection and 2 months FREE*  
http://join.msn.com/?page=features/junkmail


--
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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019