Have a static lib, is there a simple way to know it is for 32 bit or 64 bit?
Is there any tool that can directly test if a library is开发者_运维百科 made for 32 or 64 bit?
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)
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
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
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.
精彩评论