设为首页 收藏本站
查看: 1318|回复: 0

在 Win7 下使用 VS2005 编译 Chrome

[复制链接]

尚未签到

发表于 2015-5-17 06:00:44 | 显示全部楼层 |阅读模式
  在 Win7 下使用 VS2005 编译 Chrome - 胡超的学习日志 - 博客频道 - CSDN.NET

在 Win7 下使用 VS2005 编译 Chrome



分类:
C++ 第三方开源库

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

Win7 下使用 VS2005 编译 Chrome

    Chrome 是浏览器的新秀,无论从启动速度、Js 执行速度、更新速度来说,都是最佳的。最主要的是,Chrome 还是开源的,拿来研究一定不错。本文所编译的 Chrome 版本为 Revision:49506(2010.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 1:http://www.microsoft.com/downloads/details.aspx?displaylang=en&FamilyID=bb4a75ab-e2d4-4c96-b39d-37baf6b5b1dc
3、安装补丁 Hotfix 947315:http://code.msdn.microsoft.com/KB947315/Release/ProjectReleases.aspx?ReleaseId=872
4、安装补丁 Hotfix 949009:https://connect.microsoft.com/VisualStudio/Downloads/DownloadDetails.aspx?DownloadID=18623
    5、如果操作系统是 Vista,需要安装 Visual Studio 2005 Service Pack 1 Update for Windows Vista:http://www.microsoft.com/downloads/details.aspx?displaylang=zh-cn&FamilyID=90e2942d-3ad1-4873-a2ee-4acc0aace5b6
    6、安装 Microsoft Windows SDK7(Microsoft 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_tools:http://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 后,VS的IntelliSense 功能便开始运行了,整个运行过程长达1小时,个人建议禁止VS IntelliSense 运行,具体的方法可见本博客转载的另一篇文章 《去掉Visual Studio 2005的IntelliSense功能》 。
3、打开整个 Chromium 工程需要占用 500MB 的内存空间,编译过程至少需要500MB(不包括VS2005占用的内存),有时会高达 900MB,建议编译机器内存配置为 2GB 或以上。
我的CPU是Intel E5300,耗时5小时,总共编译370个工程。最后有个unit_tests 工程由于unittest_data.h文件编码问题编译失败,由于这是一个单元测试工程,可以不予理睬。
编译完成后,生成的文件夹(e:/chromium_svn/src/chrome/Debug/文件夹)大小达 13.5GB,包括源码文件的话,整个文件夹高达 17GB,建议编译前,确保磁盘拥有不少于20GB的空闲空间。

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

1、如果没有安装补丁Hotfix 947315,打开 chrome.sln 时,有可能出现卡死现象,是由于VS2005的Intelligense功能导致的。
2、如果没有安装补丁Hotfix 949009,编译过程中可能会出现错误“uuid.lib(shguids2.obj) : fatal error LNK1103: debugging information corrupt; recompile module”,如提示所说,重新编译模块并不能解决问题。
3、如果没有安装 Microsoft Windows SDK 7 或者没有 make current 绑定编译器为 VS2005,则编译过程中会出现很多编译错误,大多是宏没有定义,头文件不存在之类的。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-67598-1-1.html 上篇帖子: 移动硬盘装win7 下篇帖子: win7 下重新注册iis7(zz)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表