如何使用 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-gyp
在 binding.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
我有一个 gyp 生成的项目,它在 MSVC2013 中产生了以下错误: 我在 MSVC2013 中出现以下错误:错误 D8016:“/O2”和“/RTC1”命令行选项不兼容。
因此我尝试关闭优化尝试:
'Optimization': 'd', # 没有消息
'Optimization': 'Disabled', # 警告信息
'AdditionalOptions': ['/Od'] # 没有消息
其中 none 有效。
如何在 gyp 中设置 /Od 而不是默认的 /O2?
node-gyp
在 binding.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