首页IT科技vs2019编译器在哪(在 Win7 下使用 VS2005 编译 Chrome)

vs2019编译器在哪(在 Win7 下使用 VS2005 编译 Chrome)

时间2025-08-05 12:25:15分类IT科技浏览7692
导读:分类: C++ 第三方开源库 2010-06-15 16:17 4496人阅读 评论(4 收藏 举报 在 Win7 下使用 VS2005 编译 C...

分类:

C++ 第三方开源库

2010-06-15 16:17 4496人阅读 评论(4) 收藏 举报

Win7 下使用 VS2005 编译 Chrome

Chrome 是浏览器的新秀                 ,无论从启动速度                 、Js 执行速度                         、更新速度来说                         ,都是最佳的                 。最主要的是        ,Chrome 还是开源的                 ,拿来研究一定不错                         。本文所编译的 Chrome 版本为 Revision495062010.06.11)                         ,Chrome Google 内部的开发名是 Chromium        ,如下都是用开发名 Chromium        。

本文先讲述怎样准备编译环境         ,然后下载官方代码                         ,最后进行编译                 。

一        、准备编译环境

从官网上知道                 , Chromium是可以使用 VS2005 进行编译的         ,所以本文也将使用 VS2005 进行编译                         ,操作系统为 Windows 7                         。

无论编译什么类型的代码                 ,第一步都是准备编译环境,编译 Chromium                         ,需要安装如下软件(建议按步骤安装):

1         、Visual Studio 2005 Team Suit ENU        。

2                         、Visual Studio 2005 Service Pack 1http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=bb4a75ab-e2d4-4c96-b39d-37baf6b5b1dc

3                、安装补丁 Hotfix 947315http://code.msdn.microsoft.com/KB947315/Release/ProjectReleases.aspx?ReleaseId=872

4         、安装补丁 Hotfix 949009https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=18623

5                          、如果操作系统是 Vista                         ,需要安装 Visual Studio 2005 Service Pack 1 Update for Windows Vistahttp://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6

6                、安装 Microsoft Windows SDK7Microsoft Windows SDK for Windows 7 and .NET Framework 3.5 SP1):http://www.microsoft.com/downloads/details.aspx?FamilyID=c17ba869-9671-4330-a63e-1fd44e0e2505

7、配置 Microsoft Windows SDK7:开始菜单à所有程序à Microsoft Windows SDK v7 à Visual Studio Registration à Windows SDK Configuration Tool,在上边 Install Windows SDK Versions 右边的下拉框中选中“ v7                 ”                 ,在 Select Visual Studio Versions 中选中“Microsoft Visual Studio 2005                         ”                         ,最后点击“Make Current        ”即可(在弹出的对话框中选择确认)         。

二                          、下载代码

Google Chromium提供了一个源码下载管理的工具        ,名为:depot_toolshttp://sites.google.com/a/chromium.org/dev/developers/how-tos/install-gclient                         。此工具包含了下载代码                         、上传代码、生成 VS 认识的 vcproj                 、sln 文件的功能                 。虽然可以直接使用 SVN 取到 Chromium 的代码                 ,但建议使用 depot_tools 在命令行下进行操作                         ,以避免一些不可预知的问题         。

下面开始取源代码:

1                         、解压 depot_tools 到一个目录(通常可以放到C:/Program Files)        ,并删除其所有 .svn 文件夹                         。

2        、 C:/Program Files/depot_tools/ 目录加入到系统环境变量的 PATH 中                 。

3                 、在其他磁盘新建一个目录         ,用于存储 chromium 的源代码。本例中为:E:/chromium_svn                         。

4                         、打开 CMD 命令提示符                         ,切换到 E:/chromium_svn 目录                         。

5        、执行命令设置好源码下载地址 gclient config http://src.chromium.org/svn/trunk/src

6         、输入 gclient sync 下载源码。

5 步骤需要较长的时间                 ,在下载过程中         ,有可能出现卡死现象(当下载过程长时间不响应                         ,断定为卡式                 ,关闭CMD,重新执行第五步的命令)                         ,我的整个下载过程使用了4小时                 。gclient sync 在完成代码下载后                         ,会将 google 源代码配置文件(后缀名为gyp                         、gypi的文件)转换为 vcproj                、sln 文件,这也是为什么使用命令行下载代码比较方便的原因之一                         。

如果你 chromium/src/chrome 目录下不存在 chrome.sln 文件                 ,原因是没有彻底执行 gclient sync                         ,执行一次即可        。如果你不想下载代码        ,只想生成 chrome.sln                 ,可以执行 gclient runhooks –force                 。

源代码下载完成之后                         ,整个 Chromium_svn 3GB 大小        ,真实源码大概 1.5GB 左右         ,还有另外 1.5GB SVN 配置文件的大小                         。

三         、编译代码

去到目录                         ,打开e:/chromium_svn/src/chrome/chrome.sln 便可以进行编译了                 ,本例中我们编译 Debug 版本         ,打开环境后                         ,如何进行编译就不用说了吧        。如下有几个需要注意的地方:

1                          、如果VS2005中加载了 Visual Assist                 ,当 Visual Assist 没有处理完之前,尽量不要对 VS2005 做任何操作(包括编译)                         ,防止 Visual Studio 卡死现象                         ,Visual Assist 处理完成所有代码大概需要 30 分钟左右         。

2                、打开 VS2005 后,VSIntelliSense 功能便开始运行了                 ,整个运行过程长达1小时                         ,个人建议禁止VS IntelliSense 运行        ,具体的方法可见本博客转载的另一篇文章《去掉Visual Studio 2005IntelliSense功能》                         。

3、打开整个 Chromium 工程需要占用 500MB 的内存空间                 ,编译过程至少需要500MB(不包括VS2005占用的内存)                         ,有时会高达 900MB        ,建议编译机器内存配置为 2GB 或以上                 。

我的CPUIntel E5300         ,耗时5小时                         ,总共编译370个工程         。最后有个unit_tests 工程由于unittest_data.h文件编码问题编译失败                 ,由于这是一个单元测试工程         ,可以不予理睬                         。

编译完成后                         ,生成的文件夹(e:/chromium_svn/src/chrome/Debug/文件夹)大小达 13.5GB                 ,包括源码文件的话,整个文件夹高达 17GB                         ,建议编译前                         ,确保磁盘拥有不少于20GB的空闲空间                 。

---------------------------------------

1                          、如果没有安装补丁Hotfix 947315,打开 chrome.sln 时                 ,有可能出现卡死现象                         ,是由于VS2005Intelligense功能导致的。

2                         、如果没有安装补丁Hotfix 949009        ,编译过程中可能会出现错误“uuid.lib(shguids2.obj) : fatal error LNK1103: debugging information corrupt; recompile module         ”                 ,如提示所说                         ,重新编译模块并不能解决问题                         。

3、如果没有安装 Microsoft Windows SDK 7 或者没有 make current 绑定编译器为 VS2005        ,则编译过程中会出现很多编译错误         ,大多是宏没有定义                         ,头文件不存在之类的                         。

声明:本站所有文章                 ,如无特殊说明或标注         ,均为本站原创发布。任何个人或组织                         ,在未征得本站同意时                 ,禁止复制                 、盗用                         、采集        、发布本站内容到任何网站                 、书籍等各类媒体平台                 。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理                         。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
pandas merge 重复(python中如何使用pandas.merge?)