You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为基于GN构建的V8项目添加-save-temps参数以保留编译中间文件

方式一:生成构建目录时单次指定(无需改配置,适合临时使用)

V8基于GN+Ninja构建,你可以在生成构建目录的命令里直接传入编译参数即可:

  • 直接用gn gen的话执行:
    gn gen out/Default --args='cflags=["-save-temps"] cflags_cc=["-save-temps"]'
  • 如果你用V8官方的gm.py辅助构建脚本,执行:
    gm out/Default release -- cflags=["-save-temps"] cflags_cc=["-save-temps"]

这种方式仅对当前生成的构建目录生效,不影响其他构建配置。

方式二:修改已有构建目录的配置(长期生效于该目录)

如果你已经生成过构建目录,直接编辑对应目录下的配置文件即可:

  1. 打开构建目录下的args.gn文件,比如out/Default/args.gn
  2. 新增配置行:cflags += ["-save-temps"],也可以同时加cflags_cc += ["-save-temps"]保证C++代码也生效
  3. 保存后正常执行ninja -C out/Default编译即可,后续重复编译不需要再修改配置

注意:-save-temps生成的.i预处理文件、.s汇编文件等中间产物,会保存在构建输出目录(比如out/Default)下和源码路径对应的子目录中,不会污染源码目录。

内容的提问来源于stack exchange,提问作者Melab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.05 19:24:03