C++项目编译强制使用 /clr 选项,尽管在没有公共语言运行时支持的情况下执行它
C++ project compilation forcing the option /clr though executing it with no Common Language Runtime support
我有一个 CLI/C++ 项目,其中我删除了 .NET 中的代码,只保留了C++中的代码。尽管我已经通过选择">无公共语言运行时支持"从项目中关闭了选项/clr,但在编译过程中,代码会引发错误:
Command line error D8016 : '/EHs' and '/clr' command-line options are incompatible
此外,编译期间生成的日志文件显示:
...
...
/FD /EHsc /MTd /Fo"C:UsersEndeDesktopSlot2008buildDebug\" /Fd"C:UsersEndeDesktopSlot2008buildDebug\vc90.pdb"
/W3 /c /Zi /clr /TP /wd4945 .MAIN.cpp
因此,无论如何,VC++ 正在强制使用/clr 选项进行编译,尽管它已关闭。 提前感谢您对此行为的任何解释。
对于那些喜欢这个问题的人来说,答案是您可能会在互联网上尝试许多与调整编译选项相关的建议。如果可能没有任何效果(相信我,配置文件往往会变得混乱(,我建议您创建一个新的 Win32 项目并将所有源代码放入此项目中。
相关文章:
- CMake-按正确顺序将项目与C运行时对象文件链接
- 我在c++代码中生成了一个运行时#3异常
- 为什么在运行时没有向我们提供有关分段错误的更多信息?
- 删除指向指针的指针是运行时错误吗
- 如何用参数值调用函数(仅在运行时已知)
- 为什么即使使用-cudart-static进行编译,库用户仍然需要链接到cuda运行时
- 是否可以在编译时初始化数组,以便在运行时不会花费时间?
- c++中的指针和运行时错误
- 在运行时处理类型擦除的数据-如何不重新发明轮子
- 有没有一种方法可以测量c++程序的运行时内存使用情况
- C++项目编译强制使用 /clr 选项,尽管在没有公共语言运行时支持的情况下执行它
- LLVM:如何在运行时跟踪非类型语言的 Value* 的数据类型?
- 如何在运行时用C语言查看程序的内存布局
- 检查运行时操作系统上运行的语言
- C++可以在运行时设置/更改类属性 - 公共,私有或受保护
- C++公共语言运行时支持 [.Net?]
- C++是静态类型语言,为什么我们可以在运行时获取类型
- 设置公共语言运行时支持后,无法在 Visual Studio 2013 中调试C++
- 使用公共语言运行时支持(/clr)调用mfc dll时,未能运行mfc应用程序
- 在c++中使用脚本语言在运行时创建新的类/成员