构建 exe 时如何禁用 exp/lib 生成?

Posted

技术标签:

【中文标题】构建 exe 时如何禁用 exp/lib 生成?【英文标题】:How do I disable exp/lib generation when building an exe? 【发布时间】:2009-05-04 10:00:32 【问题描述】:

我意识到这可能是由某个地方的 _dllexport() 引起的,不是在我的代码中,而是在某些第三方代码中。 (Qt, Boost, OpenSG, ...)

是否有一个简单的链接器选项来禁用它?我已经搜索但没有找到任何地方。

【问题讨论】:

【参考方案1】:

AFAIK,不,因为相关的#pragma 覆盖了链接器设置。

【讨论】:

【参考方案2】:

我建议你确保中间文件和输出文件有不同的文件夹。

我用这种方式设置项目(项目属性/通用配置页面):

Output Directory = $(SolutionDir)\Build\$(ConfigurationName)
Intermediate Directory = $(SolutionDir)\Build\$(ConfigurationName)\$(ProjectName)

【讨论】:

我有。 exp/lib 是输出文件。 (对 dll 很有意义)

以上是关于构建 exe 时如何禁用 exp/lib 生成?的主要内容,如果未能解决你的问题,请参考以下文章

使用mingw和cmake构建opencv时出错:“windres.exe:invalid option - W”

使用电子生成器构建电子时如何排除文件?

禁用代码分析输出 MSBuild

MSBuild 中的 FxCop 和禁用 CA0060 异常

CMake:生成调用 cl.exe 的批处理文件

构建数据库项目不会生成 dbschema 文件