Подтвердить что ты не робот

Определение архитектуры процессора статической библиотеки (LIB) в Windows

Я только что построил libpng на 64-битной машине Windows, используя VS2008. Он создает файл libpng.lib в каталоге \projects\visualc71\Win32_Lib_Release (в качестве конфигурации используется "LIB Release" ).

Я использовал dumpbin для проверки этого файла LIB:

C:\Temp\libpng-1.4.3>dumpbin projects\visualc71\Win32_LIB_Release\libpng.lib
Microsoft (R) COFF/PE Dumper Version 9.00.30729.01
Copyright (C) Microsoft Corporation.  All rights reserved.


Dump of file projects\visualc71\Win32_LIB_Release\libpng.lib

File Type: LIBRARY

  Summary

         8E4 .debug$S
         DF2 .drectve
        2BCD .rdata
       21165 .text

C:\Temp\libpng-1.4.3>

Однако он не показывает архитектуру файла LIB. Как узнать, создан ли данный файл LIB для 32-разрядной или 64-разрядной архитектуры?

4b9b3361

Ответ 1

Использовать dumpbin/headers

Тип машины - это почти первая строка, которую вы получите.

Это будет 14c для x86 и 8664 для x64

n: > dumpbin lib642.lib/headers

Версия для кумпера COFF/PE от Microsoft (R)
10.00.30319.01 Авторское право (C) Корпорация Microsoft. Все права защищены.

Дамп файла lib642.lib

Тип файла: LIBRARY

ЗНАЧЕНИЯ ФАЙЛОВ             8664 (x64

Или

n: > dumpbin Lib32.lib/headers

Версия для кумпера COFF/PE от Microsoft (R)
10.00.30319.01 Авторское право (C) Корпорация Microsoft. Все права защищены.

Дамп файла Lib32.lib

Тип файла: LIBRARY

ЗНАЧЕНИЯ ФАЙЛОВ              14C машина (x86)