Cygwin: program does nothing when executed

I’ve been using Cygwin to develop programs under Win32 for quite a while. After installing a new package, various programs I had compiled earlier were broken in a strange way: they simply did nothing at all when executed. No error message, nothing.


user@box ~/svn/my_app> $ ./my_app
user@box ~/svn/my_app> $

Running the app from Windows (by double-clicking it in Explorer) gave me this error message: Cannot find entry point _feinitialise in dynamic link library cygwin1.dll.

It turned out that a partial update of Cygwin had been made when I installed the new package because Cygwin was running when I started its setup.exe to install the package. The update wanted to replace cygwin1.dll with a new version but couldn’t because it was in use. The scheduled update after the next reboot failed for some reason. And it is not guaranteed that programs compiled under older Cygwin versions work with later Cygwin versions.

So the solution is to update the dll and recompile the program. I noticed that I had a file named C:\cygwin\cygwin1.dll.new in my installation directory. After renaming that file to cygwin1.dll (making a backup of the current file of course) and recompiling my app, everything worked fine again.

Advertisements

About dfspspirit

PhD student in bioinformatics, interested in photography, level design, digital image manipulation, architecture and, of course, bioinformatics.
This entry was posted in coding, linux, troubleshooting, windows and tagged , , , . Bookmark the permalink.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s