Exit code 127 in cygwin64

by Tim Parenti   Last Updated July 12, 2018 00:01 AM

After years without problems, suddenly several programs in my installation of cygwin64 on 64-bit Windows 7 Professional are failing to run, and instead appear to exit immediately with code 127, which usually means "command not found" in Bash. In particular, programs like vim, emacs, and even clear exhibit this behavior, while others like vi, echo, touch, and date seem to operate normally.

At first, I figured something might have gone wrong with a previous round of package updates, so I ran another update using cygwin setup's command-line interface, but it didn't seem to help.

From what I can tell, the affected programs don't work at all. Not even --version flags to the program work, which makes me think that there may be something wrong with cygwin itself or a common dependency:

$ vim --version
$ echo $?

(I can provide specific version numbers for various packages if it will help, but since this problem existed both before and after the most recent updates, I doubt it matters much.)

I double-checked my PATH variable, and it begins with /usr/local/bin:/usr/bin:, as expected. Is there perhaps some new dependency in these programs that isn't being properly resolved by cygwin's package manager or which may not have been automatically added to my PATH?

Am I missing something else obvious?

Answers 3

It looks like clear was the culprit. I diagnosed this by trying to run it with its full path:

$ /usr/bin/clear
$ echo $?

I then looked inside /usr/bin and found that clear was somehow missing altogether. So, using cygwin's GUI setup, I forced a fresh reinstall of ncurses, the package which contains clear, and everything seems to be in working order now.

It stands to reason that vim and emacs both make use of clear, hence the problems cascaded to those programs, too.

Tim Parenti
Tim Parenti
January 04, 2015 00:09 AM

The exact same thing happened to me after I did a cygwin update, vim won't start, code 127. Adding clear.exe did nothing.

strace vim +q gave sigalstack could not be located in the dll cygwin1.dll The kind folks at the cygwin mailing list said my update probably did not complete becuase i did not close all my cygwin processes. Indeed I had sshd and cygrunsrv going, I killed those, and reinstalled cygwin base (go into setup and manually select reinstall cygwin base) this fixed everything. Good luck friends

October 16, 2015 14:57 PM

For anyone that arrives here from Google - I had an experience where programs were exiting with error code 127 on Cygwin (gcc in particular).

The problem turned out to be I installed into a path with a space in it.

If you install using the GUI, it warns you about this. I installed from the command line and no such warning stopped me from doing the install.

July 11, 2018 23:26 PM

Related Questions

exit from powershell script causes Unhandled exception

Updated October 18, 2017 06:01 AM

How can I get the checkinstall package for Cygwin?

Updated February 06, 2018 23:01 PM

Errors when trying to compile checkinstall from source

Updated February 09, 2018 01:01 AM

How to get exit code of a subprocess?

Updated February 20, 2017 16:01 PM