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]

Problems using a DLL with Cygwin 64 bit


Environment:
Windows 7 (64 bit)
Cygwin 64 bit
GCC version: 4.9.3

To make use of a Prosilica camera, I am having to build applications using an externally supplied DLL (from the camera manufacturer, with no source code) in Cygwin64 and Cygwin32. I am using the appropriate 32 or 64 bit version of the DLL, as supplied.

The most difficult problem encountered is when using Cygwin 64 bit. I was initially unable to link but, using pexports and dlltool, I managed to create a .lib file with which I linked OK. This got rid of the initial link failure message "error adding symbols: File in wrong format."

But having linked successfully, the application now crashes on startup:

$ ../../bin/cygwin-x86_64/prosilicaApp.exe
6 [main] prosilicaApp (96896) C:\cygwin64\home\EPICS\R3.14.12.5\modules\areaDetector\2-2\ADProsilica\2-1\iocs\prosilicaIOC\bin\cygwin-x86_64\prosilicaApp.exe:
*** fatal error - cygheap base mismatch detected - 0x1802FA400/0x6EA400.
This problem is probably due to using incompatible versions of the cygwin DLL.
Search for cygwin1.dll using the Windows Start->Find/Search facility
and delete all but the most recent version.  The most recent version *should*
reside in x:\cygwin\bin, where 'x' is the drive on which you have
installed the cygwin distribution.  Rebooting is also suggested if you
are unable to find another cygwin DLL.
Segmentation fault

The reference to cygwin DLL in the long error message appears spurious - there is only one cygwin DLL in my system and there are no problems running other Cygwin applications in the same environment.

I have tried with 2 different versions of the manufacturer's DLL. The same error occurs, but with different addresses shown in the "mismatch detected" message.

The error does not occur with a 32 bit Cygwin installation.

Any idea why this error is occurring only with 64 bit Cygwin?

Philip Taylor

(Observatory Sciences Ltd)

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple


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