【问题标题】:#include <map> statement consuming lot of time for building my project using VS 2008#include <map> 语句花费大量时间来使用 VS 2008 构建我的项目
【发布时间】:2010-10-06 08:31:17
【问题描述】:

我的一个项目没有建立(也经过这么多小时)......它没有进一步进行...... 伪代码是这样的:

在使用 Visual Studio 2008 构建我的项目时:

#pragma message("This is going to Include map.h")
#include <map>
#pragma message("The Included operation of map.h over")

对于上面的代码 sn-p,构建输出显示第一条消息,而第二条消息根本不显示(即使在几个小时后)。什么可能导致这个问题? include &lt;map&gt; 语句可能有什么问题?

【问题讨论】:

  • 在不包含 的情况下,您的项目构建速度会更快吗?我意识到您将不得不修改您的代码以删除引用,但可能值得一试,看看您是否可以编译它。然后试着把它放回去,看看有什么不同。

标签: c++ visual-studio-2008 build-process


【解决方案1】:

我会尝试使用来自sysinternals 的进程资源管理器来查看编译期间正在访问哪些文件。会不会是你有联网的#include 路径?

【讨论】:

  • VS 2008 包含文件选项仅包含来自本地磁盘的所有路径。即工具 -> 选项 -> VC++ 目录 -> 包含文件 -> 所有路径都来自本地磁盘。您能否详细说明 sysinternals 的进程资源管理器,以查看编译期间正在访问哪些文件。如何使用?
  • 在procexp中,找到大概需要很长时间的CL进程。从“视图”菜单中,选择“显示下窗格”;还查看/下窗格视图/句柄。然后就可以看到 CL 正在访问的所有文件了。
【解决方案2】:

@埃德里克

VS 2008 包含文件选项仅包含来自本地磁盘的所有路径。即工具 -> 选项 -> VC++ 目录 -> 包含文件 -> 所有路径都来自本地磁盘。

您能否详细说明来自 sysinternals 的进程浏览器,以查看编译期间正在访问哪些文件。如何使用?

【讨论】:

    【解决方案3】:

    几个小时后...听起来不像是编译器问题,更像是计算机或文件系统的故障。用记事本打开map看看是否耗时,运行chkdsk看看磁盘是否有故障。

    【讨论】:

    • 在记事本中打开地图很快......但构建只消耗这么多时间。
    • 可能是.pch文件创建有问题,删除所有临时文件重试。
    猜你喜欢
    • 2016-06-21
    • 1970-01-01
    • 2010-11-09
    • 1970-01-01
    • 2019-03-02
    • 2017-11-15
    • 2011-05-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多