Определение архитектуры процессора статической библиотеки (LIB) в Windows - PullRequest
39 голосов
/ 24 июля 2010

Я только что собрал 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-битной архитектуры?

1 Ответ

56 голосов
/ 26 июля 2010

Используйте dumpbin / headers

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

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

n:> dumpbin lib642.lib / headers

Версия дампера Microsoft (R) COFF / PE
10.00.30319.01 Copyright (C) Microsoft Corporation.Все права защищены.

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

Тип файла: БИБЛИОТЕКА

ЗНАЧЕНИЯ ФАЙЛОВ ФАЙЛА 8664 машина (x64

Или

n:> dumpbin Lib32.lib / headers

Microsoft (R) COFF / PE Dumper Версия
10.00.30319.01 Copyright (C) Microsoft Corporation. Все права защищены.

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

Тип файла: БИБЛИОТЕКА

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

...