Что эквивалентно Linux на Linux?

Что эквивалентно Linux на Linux?

11 ответов

Решение

Здесь Зависимость Уокер.

http://dependencywalker.com/

dumpbin Команда может быть полезна для многих вещей, хотя в этом случае обходчик зависимостей, вероятно, немного более многословен.

dumpbin /dependents some.dll

Или инструмент GNU:

i586-mingw32msvc-objdump -p  *.exe    | grep 'DLL Name:'

PowerShell может сделать это

PS > Пуск-Процесс -PassThru calc.exe | Get-Process -Module

   Размер (K) ModuleName
   ------- ----------
       908 calc.exe
      1700 ntdll.dll
      1148 kernel32.dll
       432 KERNELBASE.dll
     13856 SHELL32.dll
           ...

Если вы используете wine а не настоящие винды можно использовать WINEDEBUG=+loaddll wine <program>,

Более новые версии Git для Windows поставляются в комплекте с Git BASH, который эмулирует многие полезные команды Unix, включая ldd.

Похоже, что он сообщает только о библиотеках, которые можно найти. Таким образом, вы можете использовать это, чтобы получить представление о том, где находятся используемые библиотеки, а не какие отсутствуют.

Там сейчас ldd в Cygwin. Если у вас очень старая версия Cygwin, вам придется использовать cygcheck,

Я думаю, что Windows Developer может сделать это с помощью dumpbin /dependents source.exe, Если у вас установлена ​​Visual Studio, вы можете найти ее здесь: C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\dumpbin.exe,

Для Windows 10 вы можете использовать Dependencies - современный Dependency Walker с открытым исходным кодом.

https://github.com/lucasg/Dependencies

Для Windows 10 с Visual Studio 2017 я захожу в строку поиска Windows и набираю:

"Командная строка разработчика для VS 2017" (специальный cmd.exe для разработчика Visual Studio)

Это позволяет получить доступ к DUMPBIN, который следует использовать с тегом \IMPORTS. Например, в правильном каталоге:

DUMPBIN \IMPORTS yourfile.exe (другие расширения тоже могут работать)

Для меня это список DLL и используемых функций.

Как вариант, вы можете использовать более подробный тег \ALL.

см. объяснение DUMPBIN от Microsoft:

https://docs.microsoft.com/en-us/cpp/build/reference/imports-dumpbin?view=vs-2019

Пример (только с частью) контента, отправленного обратно командой

В Windows я использую cmder в качестве терминала для большинства вещей (а не powershell / pwsh). Для cmder вы можете просто ввести «ldd my_executable.exe», и вы увидите ожидаемый результат.

Ссылка для скачивания cmder: https://cmder.net/

Другие вопросы по тегам