• 网站刚刚上线,难免有不足的地方,敬请谅解!欢迎提出宝贵意见!

  •    3年前 (2015-06-06)  专业技术 浏览器 |   抢沙发  287 
    文章评分 2 次,平均分 4.0

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    附上上一篇文章地址,方便大家查看:

    下载源码

    目录结构

    如何调试

    Debug with windbg

    说一下为什么这么晚才发第二篇,上周和这周department的工作太多了,晚上都是十点半从公司出发,回家以后实在没有多余的精力去摸键盘了。所以请大家包涵!

    上期回顾:

    chromium源码下载:

    1.找个靠谱的vpn(我试过了,网上说的不用vpn拿代码的都不靠谱);

    2.获取depot_tools,解压,设置环境变量;

    3.gclient获取python和git,svn,设置环境变量;

    4.fetch–nohooks chromium –nosvn=true 获取源码;

    5.gclientsync --force –nohooks 同步到最新

    上边的python和git,也可以通过手动安装,只要环境变量设置好了就可以。

    环境配置:

    获取代码的最后一步是获取编译环境也就是Visual Studio 2013,上面所有的都成功以后,运行gclient runhooks就会把编译需要的vs2013的文件下载到本地,存储在depot_tools\win_toolchain\vs2013_files路径下,主要文件是编译需要的库文件。

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    在windows上编译chromium的官网几个说明:

    1.你必须把你的windows系统区域设置为英文,否则编译时会发生错误:"The file contains a character that cannot berepresented in the current code page."这个问题在不切换语言的情况下也可以解决。请往下看。

    2.因为之前的Visual Studio Express(免费版)存在一些问题,微软也在update4中做了修复,所以现在官网说明用Visual Studio 2013 Update4(Community版或者Professional版)来编译,其他的版本不支持。另外windows系统版本必须是win7 64位以后的版本,32位的已经不支持了。

    另外一些说明:

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    选择编译的版本:

    首先切换至src目录下,列出所有版本的标签,下面的命令将标签记录到tags.txt文本中:git tag >>tags.txt 2>&1

    使用notepad++打开后如下,只截取了最新tag:

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    大家可以切换到某个tag进行编译,命令和切换到分支相同,使用如下命令:

    git checkout -b chrome_43.0.2355.2_local_branch 43.0.2355.2

    创建本地分支chrome_43.0.2355.2_local_branch并切换到远程43.0.2355.2tag上

    通过git branch查看是否成功:

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    同步代码:

    gclient sync --nohooks --with_branch_heads --with_tags --outpu

    t-json="log.json"–jobs 16

    使用--nohooks可以减少每次都检查编译环境等信息。

    编译:

    1)生成工程,生成可以用vs2013打开的sln,方便之后调试使用。写成批处理文件执行:

    set GYP_MSVS_VERSION=2013

    set GYP_GENERATORS=msvs-ninja,ninja

    set GYP_DEFINES=component=shared_library

    set PATH=C:\depot_tools\python276_bin\;C:\depot_tools\;

    python.exe src/build/gyp_chromiumsrc/chrome/chrome.gyp >>log.txt 2>&1

    2)编译工程

    set PATH=C:\depot_tools\;

    ninja -C src\out\debug chrome>>log.txt 2>&1

    以上两步把生成的log放在log.txt中,方便查看。

    说明:

    1.set GYP_GENERATORS=msvs-ninja,ninja

    最新代码生成工程时,会因为msvs-ninja无法打开一些文件,应该影响不大

    2.set GYP_DEFINES=branding=Chromium proprietary_codecs=1 buildtype=Dev

    优化设置,可以设置

    3.set DEPOT_TOOLS_WIN_TOOLCHAIN=0

    设置为0是让gclient不要自动去构建环境,使用本机现有环境,可能修改的地方比较多,例如设置set GYP_DEFINES=windows_sdk_path="C:\Program Files(x86)\Windows Kits\8.0",一些json文件的路径等等。默认为0.

    由于编译chromium源码对warning要求很严格,所以我列出较重要的warning的解决方法:

    1.针对编码问题,和语言问题。

    解决方法:最新版本已经将waring4996包含其中,但是没有4819,加上它,会解决很多麻烦。

    在src\build\common.gypi文件中增加:

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    附上官方关于编译参数的说明:

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    在线查看版本号的地址:

    http://omahaproxy.appspot.com/

    如果有兴趣,请看下一篇,chromium的目录结构:

    http://my.oschina.net/u/2335664/blog/397663

    想让大牛指导你学习编程吗,

    想第一时间解决编程问题吗,

    想第一时间获得技术文章吗,

    这里有(java/C/C++/Android/Windows/Linux)高手等着你!

    关注微信公众平台:程序员互动联盟(coder_online),我们可以在线交流。

    chromium浏览器开发系列第二篇:如何编译最新chromium源码

    转载请注明出处,谢谢合作!

     

    本文原始地址:http://www.coderonline.net/chromium-browser-development-series-second-how-to-compile-the-latest-chromium-source-code.html

    本站所有文章,除特别注明外,均为本站原创,转载请注明出处来自http://www.coderonline.net/

    关于
    自由

    发表评论

    表情 格式

    暂无评论

    切换注册

    登录

    忘记密码 ?

    切换登录

    注册