On Oct 16 23:51, Christian Franke wrote: > Corinna Vinschen wrote: > >... > >I implemented this in the latest snapshot. It calls SetDllDirectory > >on Cygwin's /bin, and dlopen addiotnally tries to load the DLL with > >LoadLibraryEx(LOAD_WITH_ALTERED_SEARCH_PATH) if all else failed. > > For some reason, the SetDllDirectory() call has no effect for exec(): > > Testcase: > > $ unset PATH > > $ uname -srvm > -bash: uname: No such file or directory > > $ /bin/uname -srvm > CYGWIN_NT-6.1-WOW64 1.7.33s(0.277/5/3) 20141014 19:44:03 i686 > > $ /usr/sbin/alternatives > /usr/sbin/alternatives: error while loading shared libraries: ?: cannot open > shared object file: No such file or directory Weird. The same sequence of commands works fine for me on W8, W8.1 and W10 64 bit, under i686 as well as x86_64 Cygwin. [...] but it doesn't on Vista and W7, wow. The question now is, is it because the path given to SetDllDirectory is not propagated to child processes on older systems, or is it because the directory is only used in calls to LoadLibrary{Ex} on older systems. Stay tuned, I have to investigate this. Thanks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Maintainer cygwin AT cygwin DOT com Red Hat