Chrome编译

1. 前言
    想学习Chrome很久,久未得空,最近挤出些时间来玩一玩,一是为记录学习历程,供自己和朋友参考,二是督促学习。
    Ps:Google对于Chrome project编译已写的十分详细,我是按照Google文档按布做下来的。且该文档会根据不同的版本有修正,所以如果下载的是最新源码最好按照Google文档来架设编译环境,避免不必要的麻烦。
注意:
1)建议在配置过程中关闭360和Windows防火墙。360在下载git等组件时会报病毒;防火墙会导致gclient runhook时svn更新失败。
2)建议存放源码硬盘剩余空间最小60G,编译后源码目录约40多G(未包含单元测试项目)
3)准备好goagent

2. 硬件配置
    X200(P8700,8G,1T)

3. 开发平台
    Win7 旗舰版(64bit)
   Visual Studio 2010

4. 基础环境搭建
    1) 安装Vs2010(默认配置即可)
    2) 安装Vs2010 SP1补丁包
        https://www.microsoft.com/en-us/download/details.aspx?id=23691
    3) 安装Vs2012(默认配置)
        Google官方文档中没有安装Vs2012步骤,这里安装Vs2012为了免去安装文档中windows 8 SDK.
        Windows 8 SDK没有找到离线安装包,所以直接安装Vs2012了事。
    4) 安装June 2010 DirectX SDK
        http://www.microsoft.com/en-us/download/details.aspx?displaylang=en&id=6812
    5) 修改Windows 8 SDK文件
        打开C:\Program Files (x86)\Windows Kits\8.0\Include\WinRT\asyncinfo.h
        修改第66行,屏蔽Class

5. Depot_tools配置 
    1) 下载  https://src.chromium.org/svn/trunk/tools/depot_tools.zip 
         由于本机环境没有架设Cygwin所以直接下载depot_tools包 
     2) 解压(如:d:\depot_tools) 
     3) 设置Path环境变量 
          添加 d:\depot_tools 至Path末尾(注意是末尾) 
     4) 运行Cmd 
     5) cd d:\dept_tools 
     6) 运行命令gclient 
         运行gclient会自动下载git、svn、python。此步骤时间有些长,大概10多分钟。 
         做此步骤时,最好关闭360安全卫士、360杀毒,会误报病毒,很是讨厌。 
      7) 添加Python到搜索路径末尾 
           如:添加D:\depot_tools\python_bin至Path

6. 源码
    1) 源码包下载
       http://chromium-browser-source.commondatastorage.googleapis.com/chromium_tarball.html
       此链接下载最新源码包,由于文件较大,不建议用svn checkout。曾经屡次checkout失败。
       我编译用的是chromium.r173403.tgz,2.09G。
     2) 解压
         建议7zip,360压缩会假死。
         解压完毕后大约6G左右。
         注意:源码存放路径中不能包含空格;如:
     3) 配置Componet Build脚本
         a) Cd E:\chromium
         b) python build\gyp_chromium -D"component=shared_library"
         c) 在用户文件夹下添加.gyp目录
            运行cmd.exe
             Md .gyp
        d) .gyp目录下创建include.gypi文件
            文件内容:
            {'variables': {'component': 'shared_library'}}
        e) 在源码目录下创建chromium.gyp_env文件,该文件与Src同层。
             {'GYP_DEFINES': 'component=shared_library'} # use space to delimit additional defines.

      4) 获取sln
          Cd E:\chromium
          gclient runhooks --force

7. 使用Vs2010编译
    1)加载解决方案速度比较慢,装载解决方案大概半小时,编译花了5~6小时(Cpu100%).
    2)编译时单元测试代码会报错,不影响编译出的Chrom,可以在编译前移除单元测试项目。

Ps:按照上述编译出的版本有些功能无法使用,如google sync,需要用google账户打开Api权限,参考:http://www.chromium.org/developers/how-tos/api-keys
此过程需要用goagent翻下墙,所以先准备好goagent.



转帖:http://m.oschina.net/blog/96944

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值