VC++ Minimum Rebuild Dependency File

    From: xuyibo.net  Updated: 2009-04-21

    邮件通知当更新时自动发送邮件通知。
    评论本文有什么建议或评论,可以贴一下。
    我要捐助你的支持,让我们做的更好。

    今天我修改stdio.h文件中内容,发现vc2008自动开始编译所有包含了这个文件的cpp文件,所以就想check下如何实现的。

    使用promon监控cl.exe和link.exe的进程创建参数,发现是在项目目录下创建临时文件,所以就呆在那里,等到出现了RSP0000259283340.rsp一类的文件,拷贝一份,查看发现/Gm参数,vc选项卡说明:Detect changes to C++ class definitions and recompile only affected source files.

    注意这个参数必须和/Zi或/ZI一起使用,也就是说必须在生成pdb的条件下才能生成idb,估计内部在生成pdb时包含了文件关联信息。

    //idb.cpp
    #include 
    #include 
    
    int main()
    {
        printf("hello world");
        return 0;
    }
    
    /*build.bat
    cl /c /Gm /Zi idb.cpp
    link idb.obj
    */
    
    /*output:
    D:\tst\idb>cl /c /Gm /Zi idb.cpp
    Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86
    Copyright (C) Microsoft Corporation.  All rights reserved.
    
    Skipping... (no relevant changes detected)
    idb.cpp
    
    D:\tst\idb>link /debug idb.obj
    Microsoft (R) Incremental Linker Version 9.00.30729.01
    Copyright (C) Microsoft Corporation.  All rights reserved.
    */
    

  1. 相关文章
  2. 部署你的自动构建
    .xps to .jpg
    TrueCrypt Mount/Unmount Command Line
    C语言数据导入工具 - FileImport
    ZIP文件格式SDK - TinyZip
    IE插件查杀工具 - malware.exe
    cl.exe 的/Gm参数
    WDK中配置binplace
    VC2003/VC2008编译器性能
    命令行打开保存文件、浏览文件夹工具 - dialog.exe
    MD5计算工具 - MD5.exe
    哈希值计算工具 - Hash.exe
    绿色静态链接的notepad2
    命令行弹出文件/文件夹属性工具 - prop.exe
    PE校验和重置工具
    命令行新建文件 - new.exe
    libnet.dll
    绿色静态链接的cvs.exe
    Visual C++生成调试信息(转)
    VC2005编译器堆栈检查汇编码
    C++学习笔记
    MSDN精简版、MSDN绿色版、MSDN VC精简版
    .txt转.chm帮助文件的工具
    国产文件编辑器 - FlexEdit
    C语言代码文档提取工具

  3. 评论本文:
  4. EMail: