如何使用 gyp 禁用代码优化?

How to disable code Optimization with gyp?

我有一个 gyp 生成的项目,它在 MSVC2013 中产生了以下错误: 我在 MSVC2013 中出现以下错误:错误 D8016:“/O2”和“/RTC1”命令行选项不兼容。

因此我尝试关闭优化尝试:
'Optimization': 'd', # 没有消息
'Optimization': 'Disabled', # 警告信息 'AdditionalOptions': ['/Od'] # 没有消息
其中 none 有效。

如何在 gyp 中设置 /Od 而不是默认的 /O2?

node-gypbinding.gyp 之前加载一个带有编译器设置的 common.gypi 文件。您可以使用“configuration.Release.msvs_settings.VCCLCompilerTool”字典覆盖目标中的 MSVC 设置:

  'configuration': { 'Release': { 'msvs_settings': { 'VCCLCompilerTool': {
      'Optimization': 0
  }}}}

https://github.com/nodejs/node-gyp/issues/26#issuecomment-7296389