I have .lib
file compiled from C code. How I know if this self-contained static library or just an import lib and DLL will be needed at runtime? Is there some dumpbin
option I'm missing?
Examples of static libraries (libraries which are statically linked) are, . a files in Linux and . lib files in Windows.
To load the LIB file, select File → Load Library..., navigate to the location of your LIB file, select the file, and click Open.
lib file contains all the code and data for the library. The linker then identifies the bits it needs and puts them in the final executable. For a dynamic library, the . lib file contains a list of the exported functions and data elements from the library, and information about which DLL they came from.
Use the lib command. If it's static, lib will show you a pile of .obj files inside. Not so if it's am implib.
lib /list foo.lib
will do it.
Also see:
https://docs.microsoft.com/en-us/cpp/build/reference/managing-a-library
Look in its accompanying header files ,if the function are 'decorated' with __declspec(dllimport)
that it's an import library. Or look for an accompanying .def file ,that also tells you that it's an import library.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With