谷歌开源项目Chromium的源码获取与项目构建(Win7+vs10/vs13)

从12年那会儿开始获取源码和构建chromium项目都是按照那时候的官方要求用win7+vs2010,相对来说也比较简单,按照步骤来也很快能编译出来。

1.官网的编译配置介绍:http://www.chromium.org/developers/how-tos/build-instructions-windows

2.编译需要的工具:vs2010/sp1,win8sdk,DXSDK,depot_tools

我用的工具都是在这里了:2010CompilerToolsForChrome

depot_tools也可以从官方获取:depot_tools (命令行下执行 gclient 它会自动下载安装构建项目解决方案所需要的工具 python, git 和 svn ),下载下来之后找个地方解压出来,比如我是解压到E:盘下。

3.修改配置
按照官网说的,配置环境变量:GYP_MSVS_VERSION和depot_tools的path路径。

如果win8SDK的安装路径不是默认的 C:\Program Files (x86)\Windows Kits\8.0 的话,就需要增加一个环境变量。
GYP_DEFINES 值为你真正安装win8SDK的位置,比如C:\Users\Kuerjinjin\Downloads\Windows Kits\8.0
 
配置DirectX sdk的头文件及lib库路径:
windows键 + r键,输入%localappdata%\Microsoft\MSBuild\v4.0 并运行,在弹出的文件夹列表中找到Microsoft.Cpp.Win32.user.props和Microsoft.Cpp.x64.user.props并修改这两个文件。

<span style="font-size:18px;"><PropertyGroup> 
    <IncludePath>$(DXSDK_DIR)\Include;$(IncludePath)</IncludePath> 
    <LibraryPath>$(DXSDK_DIR)\Lib\x86;$(LibraryPath)</LibraryPath> 
</PropertyGroup>

<PropertyGroup> 
    <IncludePath>$(DXSDK_DIR)\Include;$(IncludePath)</IncludePath> 
    <LibraryPath>$(DXSDK_DIR)\Lib\x64;$(LibraryPath)</LibraryPath> 
</PropertyGroup> </span>

修改WRL的头文件,默认C:\Program Files (x86)\Windows Kits\8.0\Include\winrt\asyncinfo.h
找到 enum class AsyncStatus { ... }
改成 enum /*class*/ AsyncStatus { ... }

4.代码获取:
找一个空间超过60G的磁盘比如E:\,创建文件夹chromium30,命令行下切换到该目录,
<span style="font-size:18px;">>e:
>cd chromium30
>gclient config http://src.chromium.org/svn/releases/30.0.1559.0/ </span>

拉取目前最新的源码配置,当然你也可以在http://src.chromium.org/svn/releases/中选择自己想要的源码版本。
一般会在当前目录下生成一个.gclient的配置文件。为了减少不必要的代码获得的时间浪费,打开.gclient文件在“custom_deps”节里忽略掉部分测试代码,如:
<span style="font-size:18px;">solutions = [ { "name"        : "30.0.1559.0",
                        "url"         : "http://src.chromium.org/svn/releases/30.0.1559.0",
                        "deps_file"   : "DEPS",
                        "managed"     : True,
                        "custom_deps" : {
                                   "src/webkit/data/layout_tests/LayoutTests": None,
                                   "src/third_party/WebKit/LayoutTests": None,
                                   "src/chrome/tools/test/reference_build/chrome": None,
                                   "src/chrome_frame/tools/test/reference_build/chrome": None,
                                   "src/chrome/tools/test/reference_build/chrome_linux": None,
                                   "src/chrome/tools/test/reference_build/chrome_mac": None,
                        },
                       "safesync_url": "",
                      },
]</span>

不要关闭命令提示,直接在当前目录下输入gclient sync --force 进行源码的同步。接下来就等吧,这个同步的时间会很长,要同步十几G的文件下来。正常情况下会在同步完成之后生成解决方案。如果没有,在当前目录下接着输入gclient runhooks --force。如果确保已经100%同步完成了,生成解决方案的话可以直接输入 python build/gyp_chromium
如果是第一次接触这个项目,那么找一下 src/chrome/chrome.sln 打开,将chrome项目设置为启动项目,然后调试就OK。
-------------------------------------------------------------------------------------------------------------------------------
自美国时间2014年3月1日开始,谷歌对chromium源码的构建方式做了调整。
关于系统版本只支持Windows 7 x64或更高版本, x86的操作系统已经不再支持。
从chromium r254340(chromium33)之后的版本,默认的调试工具唯一指定为Visual Studio 2013,
所以如果使用最近的源码进行构建,需要安装VS2013并修改 GYP_MSVS_VERSION=2013
而构建工具除了之前一直在使用的 depot_tools ,还增加了 ninja 工具的配合(ninja也是整合在了depot_tools中)。
所以一直在使用旧版本depot_tools的开发者们,需要先更新 depot_tools (之前也就300M左右,更新后约1.86G)了。
另外一个就是要获取VS2013的工具链脚本(toolchain script)
该工具链脚本不会修改系统环境,所以使用VS13或者之前的VS10都木有问题。
下载后的工具链脚本存放在 depot_tools \ win_toolchain \ vs2013_files 
如果系统中安装了VS2013,你可以用它来编辑和调试,ninja 将仍然使用depot_tools来构建版本。
具体就以下两步:
<
  • 8
    点赞
  • 50
    收藏
    觉得还不错? 一键收藏
  • 75
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值