Search code examples
cdllstatic-linking

Static linking to lib and still requesting DLL


Using visual studio 2008, I have an .H and a .LIB file of a library. I wrote a program and referenced the LIB via the project properties. It compiles fine, but when it runs, it asks for the DLL to be installed. If the DLL is in the same dir as the EXE it works but, if I have the LIB, doesn't it already mean the functions are statically linked to my program?


Solution

  • Not all lib files are static libraries. Some are import libraries, and chances are, that's what you linked with.

    If your lib file is much smaller than its corresponding dll file, that's a sure sign that it's an import library.