在 Visual Studio 放置已编译可执行文件的输出目录中,还有三个类型为
*.exp
、*.lib
、.pdb
的附加文件。我不需要这些文件,我想阻止编译器创建它们。
这就是我的构建输出目录的样子。我只需要
*.exe
文件。
这些附加文件有什么用?我怎样才能禁用它们的生成?如果构建过程需要它们,有没有办法在创建可执行文件后自动删除它们?
我使用的是 Visual Studio 2012。如果您需要更多详细信息,请评论。
EXP 和 LIB 文件 但是我的 COM 库不需要那个 .lib 或 .exp 文件! 。您可以在“中间输出”设置中设置这些文件的位置,而不将它们放在您的发布文件夹中
里面有一些函数声明为 __declspec(dllexport)。 这意味着它们被导出,链接器认为需要链接这个动态库(无论是exe还是dll - 一般来说结构是相同的)并创建*.lib和*.exp文件
要禁用
.EXP
和 .LIB
文件的生成:Properties->Linker->Command Line
/NOEXP
/NOIMPLIB
要禁用
.PDB
文件的生成:Properties->Linker->Debugging->Generate Debug Info
No