But I don't want that .lib or .exp file for my COM library!

Viewed 10790

When generating a COM dll with VisualStudio, all I really need is the DllCanUnloadNow symbol (and three related ones) to be exported from the dll itself. Nobody is going to link against my library, so I'm not (at all) interested in a .lib file, nor in an .exp file.

However, I don't manage to inhibit creation of these files. (note: I do know how it's possible to remove them in a post-build step)

These are my linker arguments:

/OUT:"u:/cada-nt/bin/PData.dll" 
/INCREMENTAL:NO 
/NOLOGO 
/DLL 
/MANIFEST:NO 
/DEF:"PData.def" 
/DEBUG 
/PDB:"u:/cada-nt/pdb/PData.pdb" 
/ERRORREPORT:PROMPT kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib 
                    advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib 
                    odbc32.lib odbccp32.lib

The question:

  • Has anyone succeeded in not generating the .lib and .exp files?
  • Does anyone know why these files are generated?
5 Answers

/NOIMPLIB will prevent generation of the .lib file. I don't know how to avoid the .exp file.

Related