www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.learn - DLLs with Cygwin don't work

reply "Chris" <wendlec tcd.ie> writes:
The following:

1. created test C-dll in Cygwin (gcc -shared -o hello.dll hello.o)
2. used "implib.exe /s" to create .lib file
3. linked with D program "dmd test.d hello.lib"

Compiles, program starts but begins to hang as soon as it calls 
the C function (which itself is never executed, no "hello world" 
is printed).

Windows 7, 32bit.

In the past it worked flawlessly. Windows 7 had a few updates 
recently and I updated Cygwin (and of course dmd). I noticed this 
behavior in a customized C-library and wanted to rule out it's 
the library (which works perfectly well on Linux). So I wrote a 
simple "hello world" dll, to see what happens. Exact same 
behavior.

Any ideas? Thanks!
Jun 17 2014
parent "Chris" <wendlec tcd.ie> writes:
On Tuesday, 17 June 2014 at 09:51:06 UTC, Chris wrote:
 The following:

 1. created test C-dll in Cygwin (gcc -shared -o hello.dll 
 hello.o)
 2. used "implib.exe /s" to create .lib file
 3. linked with D program "dmd test.d hello.lib"

 Compiles, program starts but begins to hang as soon as it calls 
 the C function (which itself is never executed, no "hello 
 world" is printed).

 Windows 7, 32bit.

 In the past it worked flawlessly. Windows 7 had a few updates 
 recently and I updated Cygwin (and of course dmd). I noticed 
 this behavior in a customized C-library and wanted to rule out 
 it's the library (which works perfectly well on Linux). So I 
 wrote a simple "hello world" dll, to see what happens. Exact 
 same behavior.

 Any ideas? Thanks!
I tried MinGW and it works now, plus I don't need the cygwin1.dll anymore.
Jun 18 2014