delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2000/10/30/06:58:50

Mailing-List: contact cygwin-help AT sourceware DOT cygnus DOT com; run by ezmlm
List-Subscribe: <mailto:cygwin-subscribe AT sources DOT redhat DOT com>
List-Archive: <http://sources.redhat.com/ml/cygwin/>
List-Post: <mailto:cygwin AT sources DOT redhat DOT com>
List-Help: <mailto:cygwin-help AT sources DOT redhat DOT com>, <http://sources.redhat.com/ml/#faqs>
Sender: cygwin-owner AT sources DOT redhat DOT com
Delivered-To: mailing list cygwin AT sources DOT redhat DOT com
Message-ID: <15341111706EBF408162655EEEB44ABC0BF663@exchange2.mmp.plzen-city.cz>
From: =?iso-8859-2?Q?Hor=E1k_Daniel?= <horak AT sit DOT plzen-city DOT cz>
To: "'cygwin AT sources DOT redhat DOT com'" <cygwin AT sources DOT redhat DOT com>
Subject: RE: cygwin and InterBase 6.0
Date: Mon, 30 Oct 2000 12:54:27 +0100
MIME-Version: 1.0
X-Mailer: Internet Mail Service (5.5.2650.21)

> I have a problem with linking InterBase client library with 
> my program. I
> was not able to use their import libraries (the MS C version 
> uses a strange
> first character (a small house?) in the symbol name) so I 
> must link directly
> with gds32.dll (the shared client library). And the problem 
> is that when I
> call isc_dsql_describe() function (from IB client API) my 
> programs crashes
> (with message from cygwin about "possibly corrupted stack"). 
> I cannot say
> that it really corrupts the stack but it corrupts data 
> structures that are
> passed into this function. But some other functions are 
> working as expected.
> Can this crash be caused by a wrong use of exported data from the DLL?
> 
> Has anybody experiences with Cygwin and InterBase?
> 
> cygwin 1.1.4
> binutils 20000722-1
> gcc 2.95.2-2
> InterBase 6.01
> 

The problem was that both caller and callee removed function argument from
the stack. I have already solved this situation - I had to use MS C compiler
and linker.

The InterBase client library gds32.dll exports the functions with names as
isc_dsql_describe etc., but the functions are compiled with __stdcall
convention (there are no @xy suffixes). When I included the header file with
stdcall set for the functions, I have got .o file. But this file must be
linked with functions isc_ DOT  DOT  DOT  AT xy from the import library. But when I created
the import library with isc_ DOT  DOT  DOT  AT xy functions that functions were not found
in the DLL.

So is there any possibility in gcc to create the .o file where stdcall
functions will not have @xy suffix? Or is there a possibility to link
stdcall functions (with @xy suffix) with functions from import library
without @xy suffix?

		Dan

--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe AT sourceware DOT cygnus DOT com

- Raw text -


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