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

如何在Clang中禁用预编译头(PCH)?解决编译生成.pch文件问题

如何禁用clang++编译yarpgen输出文件时生成init.h.pch
  • 别直接用clang++ *编译,这个命令会把目录里的init.h也当成编译目标传入,clang会自动把.h文件当作预编译头来处理生成.pch。改成只编译cpp文件:

    clang++ *.cpp
    
  • 如果还是生成,就显式加上禁用预编译头的参数,强制clang不生成PCH:

    clang++ -fno-use-precompiled-header -fno-pch-timestamp *.cpp
    
  • 检查yarpgen生成的代码文件(比如init.h、driver.cpp、func.cpp)里有没有#pragma hdrstop这类强制生成预编译头的指令,有的话直接删掉就行。

  • 最后记得先手动删掉已经生成的init.h.pch,再重新编译,避免残留文件干扰。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.14 02:08:12