Have a static lib, is there a simple way to know it is for 32 bit or 64 bit?

后端 未结 4 1569
一向
一向 2020-12-23 19:11

Is there any tool that can directly test if a library is made for 32 or 64 bit?

相关标签:
4条回答
  • In visual studio, we can get to know about whether Lib/dll is 32 or 64 bit with Coreflags.exe This tool is automatically installed with Visual Studio. we can run this command from Command line, which can be run as

     C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin\CorFlags.exe whatever_Lib_with_path
    

    This command will return you whether that file is managed or Unmanaged. If its managed then it can give info about that is is 32/64 bit.

    0 讨论(0)
  • 2020-12-23 19:27

    Run a visual studio command prompt to ensure your path can find dumpbin.exe

    Pipe to findstr to save on the big spew about each section and optionally you can use a wildcard to analyse a folder of libs.

    dumpbin /headers *.lib | findstr machine

    Example of what you're looking for;

    8664 machine (x64)
    
    0 讨论(0)
  • 2020-12-23 19:28

    You can use dumpbin utility with /headers option

    It returns whether the library was built for 32 or 64 bit architecture.

    Check DUMPBIN Reference for details.

    Example usage:

    c:\>dumpbin libXYZ.lib /headers
    
    0 讨论(0)
  • 2020-12-23 19:49

    I haven't tried this but you can also use file.exe, the unix file equivalent on windows. You can download the binary (and source as well) from here or gnu version here

    0 讨论(0)
提交回复
热议问题