ldd differences

Roger Wells roger.k.wells@leidos.com
Mon Mar 14 15:36:00 GMT 2016


On a 32 bit Cygwin installation on a Windows 7 host that is a few years old:

$ uname -a
CYGWIN_NT-6.1-WOW64 DET000-DAC1 1.7.17(0.262/5/3) 2012-10-19 14:39 i686
Cygwin

running ldd on a newly built executable gives:

$ ldd z12.exe
    ntdll.dll => /cygdrive/c/Windows/SysWOW64/ntdll.dll (0x77df0000)
    kernel32.dll => /cygdrive/c/Windows/syswow64/kernel32.dll (0x75b40000)
    KERNELBASE.dll => /cygdrive/c/Windows/syswow64/KERNELBASE.dll
(0x766c0000)
    msvcrt.dll => /cygdrive/c/Windows/syswow64/msvcrt.dll (0x75c50000)
    libnmea0183.dll => /cygdrive/d/iss60/dll/libnmea0183.dll (0x614c0000)
    libsensors.dll => /cygdrive/d/iss60/dll/libsensors.dll (0x68cc0000)
    libutility.dll => /cygdrive/d/iss60/dll/libutility.dll (0x70cc0000)
    ADVAPI32.DLL => /cygdrive/c/Windows/syswow64/ADVAPI32.DLL (0x75a70000)
    sechost.dll => /cygdrive/c/Windows/SysWOW64/sechost.dll (0x76150000)
    RPCRT4.dll => /cygdrive/c/Windows/syswow64/RPCRT4.dll (0x762d0000)
    SspiCli.dll => /cygdrive/c/Windows/syswow64/SspiCli.dll (0x754b0000)
    CRYPTBASE.dll => /cygdrive/c/Windows/syswow64/CRYPTBASE.dll (0x754a0000)
    USER32.dll => /cygdrive/c/Windows/syswow64/USER32.dll (0x75840000)
    GDI32.dll => /cygdrive/c/Windows/syswow64/GDI32.dll (0x75720000)
    LPK.dll => /cygdrive/c/Windows/syswow64/LPK.dll (0x766b0000)
    USP10.dll => /cygdrive/c/Windows/syswow64/USP10.dll (0x763c0000)
    WINMM.DLL => /cygdrive/c/Windows/system32/WINMM.DLL (0x71ee0000)
    WSOCK32.DLL => /cygdrive/c/Windows/system32/WSOCK32.DLL (0x72b10000)
    WS2_32.dll => /cygdrive/c/Windows/syswow64/WS2_32.dll (0x75f20000)
    NSI.dll => /cygdrive/c/Windows/syswow64/NSI.dll (0x75710000)
    libfilters.dll => /cygdrive/d/iss60/dll/libfilters.dll (0x6dc40000)
    IMM32.DLL => /cygdrive/c/Windows/system32/IMM32.DLL (0x756b0000)
    MSCTF.dll => /cygdrive/c/Windows/syswow64/MSCTF.dll (0x75ff0000)

An expected list containing dependencies on Windows and our own DLL's.

On a quite new 64 bit Cygwin running on a Windows 10 host:

$ uname -a
CYGWIN_NT-10.0 rwells-x220 2.4.1(0.293/5/3) 2016-01-24 11:26 x86_64 Cygwin

Running ldd on the same executable file gives:

$ ldd z12.exe
    ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x7ffe2bfd0000)
    ntdll.dll => /cygdrive/c/WINDOWS/SYSTEM32/ntdll.dll (0x774b0000)
    wow64.dll => /cygdrive/c/WINDOWS/system32/wow64.dll (0x72290000)
    wow64win.dll => /cygdrive/c/WINDOWS/system32/wow64win.dll (0x722e0000)
    ??? => ??? (0xc0000)
    KERNEL32.DLL => /cygdrive/c/WINDOWS/SYSTEM32/KERNEL32.DLL (0x76a60000)
    ??? => ??? (0xc0000)
    ??? => ??? (0x650000)
    wow64cpu.dll => /cygdrive/c/WINDOWS/system32/wow64cpu.dll (0x72280000)
    KERNEL32.DLL => /cygdrive/c/WINDOWS/SYSTEM32/KERNEL32.DLL (0x76a60000)
    KERNELBASE.dll => /cygdrive/c/WINDOWS/SYSTEM32/KERNELBASE.dll
(0x75870000)
    msvcrt.dll => /cygdrive/c/WINDOWS/SYSTEM32/msvcrt.dll (0x76e50000)


And the executable, z12.exe, does run correctly on both systems.

What I really need is a reliable way to get a recursive listing of the
complete path to all dependencies.
I tried using Dependency Walker (both 32 & 64 bit) but it does not seem
to run on W10.

TIA


-- 
Roger Wells, P.E.
leidos
221 Third St
Newport, RI 02840
401-847-4210 (voice)
401-849-1585 (fax)
roger.k.wells@leidos.com



--
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



More information about the Cygwin mailing list