Ok, I was wrong about ash (not) using cygwin1.dll. Running ldd on rebase and peflags reveals that they use it too, which pretty much says that they are cygwin apps.
However, it also shows that the preferred load address, on my system anyway, for cygwin1.dll is 0x61000000. That explains the starting point for my -d rebasing -- to go below cygwin1.dll. cygwin1.dll has its base set when it is built. There may be some way to rebase it, but I don't know what it is, though I expect that there is a Windows tools for doing it if it matters. It was not necessary for me. Checking my scripts, I eliminate cygwin1.dll from the list of dlls, and ash.exe and peflags.exe from the list of exes. Could probably remove rebase.exe as well, but it did not seem to matter. It *is* important that ash does *not* load some other big dlls related to C libraries, which bash tends to want. These in particular: cygintl-8.dll => /usr/bin/cygintl-8.dll (0x58f70000) cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x59060000) cygreadline7.dll => /usr/bin/cygreadline7.dll (0x57320000) cygncurses-9.dll => /usr/bin/cygncurses-9.dll (0x6db80000) cyggcc_s-1.dll => /usr/bin/cyggcc_s-1.dll (0x5c1e0000) (Part of the output from ldd /bin/bash.) Hope there's something here that helps ... Eliot -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple