This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

RE: How to link with third party libraries using gcc


> -----Original Message-----
> From: cygwin-owner@cygwin.com 
> [mailto:cygwin-owner@cygwin.com] On Behalf Of Larry Hall (Cygwin)
> Sent: Friday, June 29, 2007 2:37 PM
> To: cygwin@cygwin.com
> Subject: Re: How to link with third party libraries using gcc
> 
> Bob McConnell wrote:
> 
> <snip>
> > 
> > Whether the libraries are linked dynamic or static is 
> irrelevant here.
> > The Windows libraries are stored in a different object 
> format than the
> > Unix and Cygwin libraries, and probably have different calling
> 
> The format of Windows and Cygwin libraries are the same.
> 
> > conventions. You can't use MS-Windows libraries without the 
> appropriate
> > tools, usually that means Visual Studio. Cygwin made no 
> attempt to be
> 
> You can use MS-Windows libraries with Cygwin.  Look under the 
> hood of Cygwin
> and you'll see Windows API calls.  The typical problems are 
> matching the
> calling conventions and managing resources (heap, etc), as 
> Dave has already
> pointed out.  But it's possible, as Cygwin itself illustrates.

So you are suggesting that with the proper header files and a little
fiddling I could build and run a Visual Studio.Net project on top of the
cygwin DLL and use additional Cygwin libraries in it? That is what it
sounds like to me. As an application programmer, I don't look under the
hood. I leave that to the kernel programmers that understand the
intricacies involved. I already have enough trouble debugging some
hardware vendors' libraries.

I have attempted to go the other way, with no success. I tried to use
Cygwin B.20 to write some MS-Windows services a few years ago. One was a
simple TCP/IP socket proxy, and I never could get it to talk with the
Service Control Manager. It took about two hours to get it running as a
daemon on Slackware and half a day to port it into MSVC6.

Bob McConnell

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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]