Programs become a no-op

Brian Inglis
Thu May 3 05:48:00 GMT 2018

On 2018-05-02 17:52, David Rothenberger wrote:
> Kaz Kylheku wrote:
>> On 2018-05-02 14:15, David Rothenberger wrote:
>>> On 5/2/2018 1:13 PM, Boylan, Ross wrote:
>>>> I've tried
>>>> ssh -V
>>>> ssh --help
>>>> ssh -v somene@somewhere
>>>> and in all cases nothing happens except that I get a new command 
>>>> prompt. They used to work fine.
>>> This is usually due to a missing dependency. You can try "echo $?" after
>>> one of the failing commands. If it is 127, that's probably the issue. I
>>> usually track down the missing dependency by running the program under
>>> strace (strace ssh --help). It should pop-up a dialog window with the
>>> missing dependency library.
>> What if it is 127 and the dialog says "The procedure entry point 
>> __locale_ctype_ptr could not be located in the dynamic link library
>> cygwin1.dll"?
>> That looks like an outdated cygwin1.dll w.r.t. that program (in this case 
>> gdb).
>> But why doesn't setup.exe ensure that cygwin1.dll is up-to-date for other 
>> things it installs?
> This can happen if you have Cygwin processes running when you run setup and 
> you ignore warnings. If I were you, I would first try a reboot. If that 
> doesn't work, I would ensure that all Cygwin processes and services are 
> stopped and then use setup to reinstall all your packages. If *that* doesn't 
> work, I would follow the instructions at to 
> provide additional information for troubleshooting.
To check for incomplete setup due to interference, see if the following shows
anything amiss:

  $ /bin/ls -d -- /etc/postinstall/[!0z][!pqrst][!_]*.*sh    \
  >               /*bin/*.new /usr/*bin/*.new 2> /dev/null | \
  > /bin/egrep -vx '^/etc/postinstall/([0z][pqrst]_.*\..*sh|.*\..*sh\.done)$'

I run this in my Cygwin profile with suitable wrapping to let me know if setup
install or postinstall had issues, assuming Cygwin and coreutils are usable.

You can fix these issues outside Cygwin by renaming any .../*bin/*.new files
without the .new suffix, after renaming the original files to .old, when they
are not open or being used; then running any /etc/postinstall/*.*sh scripts,
whose names don't begin [0z]p_, under the required dash or bash shell, and
rename with added suffix .done if the shell script completes successfully.
This could be automated in a .cmd script using only cmd facilities and Windows
utilities with some effort: it's getting a bit easier on Windows (Powershell is
still mostly not standard/considered dangerous on corporate users' desktops),
but still nowhere nearly as easy as with bash/dash/sh on Cygwin.

Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada

Problem reports:
Unsubscribe info:

More information about the Cygwin mailing list