警告LNK4075:由于'/INCREMENTAL:NO'规范而忽略'/EDITANDCONTINUE'
Warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
我有一个链接到外部.lib(libprotobuf.lib)的项目。 当我在发布中编译时,没有警告。但是,当我在调试中编译时,我收到以下警告:
warning LNK4075: ignoring '/EDITANDCONTINUE' due to '/INCREMENTAL:NO' specification
File: libprotobuf.lib(message_lite.obj)
我一直在研究这个问题,从这个问题开始。 我一直在调整我的项目选项,并且我有(在调试配置中):
/Zi - 所以编辑并继续不应该打开。
/增量 - 所以增量应该打开。
知道为什么我仍然收到此警告吗?我最好的猜测是外部库是在/ZI 上构建的......但我不明白为什么如果我打开/INCREMENTAL 会是一个问题。 提前感谢您的帮助!
更新:我能够使用/Zi 选项而不是/ZI 重建外部库......这解决了我的问题,但如果有人能告诉我原因,我将不胜感激。为什么在我的原始项目中,打开/INCREMENTAL 时,警告仍然显示为给定状态? 谢谢!
OP将修复程序作为更新发布。我可以确认这是修复程序,因为我遇到了相同的问题并按照建议进行了修复。问题出在消耗的库中,而不是在错误标识的项目中。消耗的库必须在没有/ZI(上 i)的情况下构建,而/Zi(下 i)似乎是一个不错的选择。
该错误的令人困惑的方面是上下文项目具有/INCREMENTAL (这似乎与/INCREMENTAL:NO 相反)和/Zi(似乎不是 editandcontinue)。因此,错误消息似乎是错误的。但是,文件上下文是问题存在于使用的库中的线索。
为了确认,错误上下文为:
- 项目
- :消费项目 文件
- :消耗的库文件(一些.obj文件)
我认为这很简单。/Zi 选项依赖于/INCREMENTAL 选项,如果将其关闭,编译器会发出警告。(您提到的警告是在编译外部库时,根据错误消息)。因此,警告是关于外部库的配置问题的。
相关文章:
- "error: no matching function for call to"构造函数错误
- 调用专用模板时出错"no matching function for call to [...]"
- c++20[[no.unique_address]]中的新功能是什么
- 以线程安全的方式调用"QQuickPaintedItem::updateImage(const QImage&image)"(no QThread)
- "no matching function for call to 'Vector::Vector'"错误
- Android NDK clang 编译器错误在 Windows 上显示'No such file or directory'
- 处理"no operator found"
- 我在 ifstream input_file(文件名)行中收到错误"no matching function to call";
- 如何解决"no Qt platform plugin could be initialized"问题?
- "Unable to start debugging. No process is associated with this object." - 在Visual Studio Code中使用GDB
- 为什么当我在 std::string 中打开文件名的 fstream 时出现"no matching function"错误?
- 已解决 - C++ 的崇高文本中的"fatal error: opencv: no such file or directory"
- do while 循环中的 if 语句以 yes 或 no 结尾
- 从 TVector2 类派生复杂类:"No matching function for call to Complex::Complex()"
- 错误消息:使用"string* +="后"no match for 'operator+='"
- Eulers 项目问题 no 345 听不懂几行代码
- "No-Const Pointer to Const "调用功能
- 如何在 c++ 中将 s1 和 s2 与 no if 语句进行比较
- "No such file or directory" C++标头问题
- 警告LNK4075:由于'/INCREMENTAL:NO'规范而忽略'/EDITANDCONTINUE'