This is the mail archive of the cygwin mailing list for the Cygwin project.

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Why does ldd not show cyg*.dll in its output?

On 16/05/2016 17:42, Warren Young wrote:

    $ ldd `which ls`

Actual output:

$ ldd `which ls`
        ntdll.dll => /c/WINDOWS/SYSTEM32/ntdll.dll (0x7ffd16fb0000)
        KERNEL32.DLL => /c/WINDOWS/system32/KERNEL32.DLL (0x7ffd16b80000)
        KERNELBASE.dll => /c/WINDOWS/system32/KERNELBASE.dll (0x7ffd13f50000)

Expected output:

According to Microsoftâs Dependency Walker tool, the output should also list cygwin1.dll and cygintl-8.dll, at minimum.  Since it seems happy to chase dependencies from kernel32.dll to the other two, which are not explicit dependencies of ls.exe, it should also list cygiconv-2.dll, via cygintl.

Bonus points if the output changes to a tree view, so the indirect dependencies are clear.

it works as expected for me:

$ ldd /usr/bin/ls.exe
 ntdll.dll => /cygdrive/c/Windows/SYSTEM32/ntdll.dll (0x77410000)
 kernel32.dll => /cygdrive/c/Windows/system32/kernel32.dll (0x771f0000)
KERNELBASE.dll => /cygdrive/c/Windows/system32/KERNELBASE.dll (0x7fefd460000)
 SYSFER.DLL => /cygdrive/c/Windows/System32/SYSFER.DLL (0x74e90000)
 cygwin1.dll => /usr/bin/cygwin1.dll (0x180040000)
 cygintl-8.dll => /usr/bin/cygintl-8.dll (0x3e1840000)
 cygiconv-2.dll => /usr/bin/cygiconv-2.dll (0x3e6e90000)

$ objdump -x /usr/bin/ls.exe |grep "DLL Name:"
        DLL Name: cygwin1.dll
        DLL Name: cygintl-8.dll
        DLL Name: KERNEL32.dll

Problem reports:
Unsubscribe info:

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]