C++ 项目编译强制选项 /clr 尽管在没有公共语言运行时支持的情况下执行它
C++ project compilation forcing the option /clr though executing it with no Common Language Runtime support
我有一个 CLI/C++ 项目,我在其中删除了 .NET 中的代码,只保留了 C++ 中的代码。尽管我已经通过选择 No Common Language Runtime support 关闭了项目中的选项 /clr,但在编译期间代码会抛出错误:
Command line error D8016 : '/EHs' and '/clr' command-line options are incompatible
此外,编译过程中生成的日志文件显示:
...
...
/FD /EHsc /MTd /Fo"C:\Users\Ende\Desktop\Slot2008\build\Debug\" /Fd"C:\Users\Ende\Desktop\Slot2008\build\Debug\vc90.pdb"
/W3 /c /Zi /clr /TP /wd4945 .\MAIN.cpp
因此,无论如何,VC++ 会强制使用选项 /clr 进行编译,尽管它已关闭。提前感谢您对此行为的任何解释。
对于那些关心这个问题的人,答案是您可以尝试互联网上与调整编译选项相关的许多建议。如果可能没有任何效果(相信我,配置文件往往会变得混乱),我建议您创建一个新的 Win32 项目并将所有源代码放入该项目中。
我有一个 CLI/C++ 项目,我在其中删除了 .NET 中的代码,只保留了 C++ 中的代码。尽管我已经通过选择 No Common Language Runtime support 关闭了项目中的选项 /clr,但在编译期间代码会抛出错误:
Command line error D8016 : '/EHs' and '/clr' command-line options are incompatible
此外,编译过程中生成的日志文件显示:
...
...
/FD /EHsc /MTd /Fo"C:\Users\Ende\Desktop\Slot2008\build\Debug\" /Fd"C:\Users\Ende\Desktop\Slot2008\build\Debug\vc90.pdb"
/W3 /c /Zi /clr /TP /wd4945 .\MAIN.cpp
因此,无论如何,VC++ 会强制使用选项 /clr 进行编译,尽管它已关闭。提前感谢您对此行为的任何解释。
对于那些关心这个问题的人,答案是您可以尝试互联网上与调整编译选项相关的许多建议。如果可能没有任何效果(相信我,配置文件往往会变得混乱),我建议您创建一个新的 Win32 项目并将所有源代码放入该项目中。