• 谷歌获取chromium


    转自:http://blog.sina.com.cn/s/blog_496be0db0102voit.html

    非常坑爹,谷歌获取chromium源码的方式又变了!!!
    从chromium39.0.2313.2之后的源码不能通过之前那种 gclient config http://*** 的方式获取了,因为之后的chromium的代码刚好全部迁移到了git管理了!
    可以看这里了解一下点击打开链接(https://chromium.googlesource.com/chromium/src/+refs)
    所以这篇文章又要改版了:D
     
    一、概况
    chromium现在分为四个大分支:
    canary:最前沿的版本,每日发布,bug一堆,不适合新人。
    dev:每2星期发布,比较稳定,可以体验新功能和新特性。
    beta:每周小版本更新,6周大版本更新。比dev稳定,比同期dev版小1个版本号,基本上是stable的待发版本。
    stable:比同期dev小2个版本号,2到3周次版本更新一次,每6周主版本更新。这是正式的发布版本,推荐用这个来学习,特别是新人。
    具体的英文介绍可以看这里:点击打开链接(http://www.chromium.org/getting-involved/dev-channel)
    点击这个网址(http://dev.chromium.org/developers/calendar)可以了解最近的Chromium版本情况。
     
    二、Master分支代码下载(Windows)
    下面简单说说下载过程:
    1、先浏览器翻墙;
    2、通过浏览器下载depot_tools.zip;
     
    3、将depot_tools.zip解压后,将depot_tools目录路径添加到系统的PATH环境变量开始处;
       如PATH=c:depot_tools;.......
     
    4、建立一个目录用于下载chromium代码,比如D:chromium,在此目录中在建立一个目录master;
       D:chromiummaster就是我们将要签出代码的主目录
     
    5、打开CMD,更新刚才的depot_tools,命令如下
       x:>gclient
       注意:gclient后面不带任何参数!!
       此时,将会依次下载安装python和git,其中安装git比较奇葩。第一次运行gclient命令,下载的msysgit是git-1.9.0.chromium.5_bin!!!!
       所以成功后,你需要再次运行x:>gclient
       这时才会下载到最新的git版本git-1.9.0.chromium.6_bin
       gclient完成后,查看下版本号,看看有无错误提示,命令如下:
       x:>gclient --version
       成功后可以运行一次gclient --version看看版本号,并注意一下有没有错误提示。
    6、如果之前从未使用过git,那么需要进行一下全球的git配置
       x:>git config --global user.name "yourname" #yourname改为你希望的用户名
       x:>git config --global user.email "youremailaddress@gmail.com" #输入你自己的邮箱
       x:>git config --global core.autocrlf false
       x:>git config --global core.filemode false
    7、在CMD中,切换到刚才建立的D:chromiummaster目录中(这个目录你自己随便找个空间足够的盘建立了,名字随意)
       然后运行fetch chromium命令,此时源码下载就开始了。
       D:chromiummaster>fetch chromium
       注意:这是在下master分支下的最新源代码,其中最开始的3G左右是在后台下载的,我们在CMD窗口只看到不断出现的
        [0:06:10] Still working on:
        [0:06:10]   src
       在整个源码下载过程中,最好不要关闭CMD窗口!!!!源码全部下载下来超过10G,所以是拼网速的时候了。
        如果万不得已希望暂停,请在CMD窗口按 Ctrl+C键中断
        如果异常中断,请重新打开CMD窗口,然后执行步骤7的fetch chromium命令!不过有个例外,如果源码已经下载完毕了(100%)的情况,但fetch chroumium提示了失败,
        则如果要继续下载请输入gclient sync命令!!!!
        D:chromiummaster>gclient sync
        以上操作参看官方文章((抱歉,下面的url含有敏感词,以图代替))
        使用代理同步Chromium代码的心得(V2.0)
        构建相关参看官方文章
     
     
    三、关于翻墙的问题
        由于众所周知的原因,在执行步骤6时,很可能无法下载git和python,此时我们需要翻墙。如果你有VPN,那么在步骤1之前直接拨VPN,后面的内容就不用看了;否则,请继续看:
        首先,你必须找到一个HTTP/HTTPS/SOCKS5代理服务器(找不到的话神仙也帮不了你了)
        然后,我们为CMD设置HTTP/HTTPS/SOCKS5代理
        为完成步骤2)的gclient命令,我们需要设置系统http/https代理,这里需要用到netsh winhttp里的命令(假设http代理地址是http.proxy.com:12345)
        打开一个具有管理员权限的CMD(非常重要),在其中输入
        x:>netsh
        netsh>winhttp
        netsh winhttp>
        netsh winhttp>
        netsh winhttp>set proxy http.proxy.com:12345
        设置完毕后,退出该CMD,再启动一个普通CMD,运行gclient命令;
        x:>gclient
        这是就能顺利下到python和git(注意:是git-1.9.0.chromium.5_bin)
        在git-1.9.0.chromium.5_bin已经能下载好后,如果再想用gclient下git-1.9.0.chromium.6_bin的话,问题就来了,下载会失败,why?
        在下载git-1.9.0.chromium.6_bin的时候,起作用的是git-1.9.0.chromium.5_bin中的git!!!!!
        因此,在第二次运行gclient命令前,我们要为git设置好代理。
        git支持git,http/https,ssh等协议,在这里我们只需要设置最简单的http/https协议就行了,设置方法如下
       (假设代理服务器地址为: http://http.proxy.com:12345, http://https.proxy.com:23456, socks5://socks.proxy.com:34567)
        先设置CMD环境变量,在CMD中输入:
        x:>set http_proxy=http://http.proxy.com:12345
        x:>set https_proxy=http://https.proxy.com:23456
        x:>set socks5_proxy=socks5://https.proxy.com:23456
        为git设置http/https代理,在CMD中输入:
        a)使用http/https代理服务器
        x:>git config --global http.proxy %http_proxy%
        x:>git config --global https.proxy %https_proxy%
        或者:b)使用socks5代理服务器
        x:>git config --global http.proxy %socks5_proxy%
        x:>git config --global https.proxy %socks5_proxy%
        设置完后,用下面命令看是否成功:
        x:>git config --get http.proxy
        x:>git config --get https.proxy
        如果显示代理都正确,就继续执行步骤2)里的第二次gclient命令
        x:>gclient
        等git-1.9.0.chromium.6_bin更新成功后,就可以继续步骤6)和7)了
     
    备注:
        代码同步成功后,记得回复系统设置哦
        1)恢复netsh winhttp设置为直连
        打开一个具有管理员权限的CMD,输入下面命令
        x:>netsh
        netsh>winhttp
        netsh winhttp>
        netsh winhttp>reset proxy
        输入下面命令看清除是否成功,成功后显示下面信息
        netsh winhttp>show proxy
        Current WinHTTP proxy settings:
            Direct access (no proxy server).
        关于netsh部分,请到Microsoft这个页面详细查看(https://technet.microsoft.com/zh-CN/library/bb430772
     
        2)清除git代理
        打开一个普通的CMD,输入下面的命令
        git config --global --unset http.proxy
     
    四、download_from_google_storage错误处理
    如果使用http代理同步chromium代码,在执行fetch chromium或者gclient sync的最后会提示下面的错误,无法生成sln文件。
    Failed download_from_google_storage --no_resume --platform=win32 --no_auth   
    --bucket chromium-gn -s src/buildtools/linux32/gn.sha1 
    NOTICE: You have PROXY values set in your environment, but gsutil in   
    depot_tools does not (yet) obey them. 
    Also, --no_auth prevents the normal BOTO_CONFIG environment variable from   
    being used. 
    To use a proxy in this situation, please supply those settings in a .boto   
    file pointed to by the NO_AUTH_BOTO_CONFIG environment var.
    解决办法,随便找个地方生成一个文本文件,比如 D:oto.cfg
    在该文件中输入下面的内容(假设代理服务器是 http://http.proxy.com:12345):
    [Boto]
    proxy=http://http.proxy.com
    proxy_port = 12345
     
    然后设置环境变量
    set NO_AUTH_BOTO_CONFIG=D:oto.cfg
    再执行fetch chromium或者gclient sync
  • 相关阅读:
    Delphi下的WinSock编程
    基于Delphi使用API实现Sock通讯
    delphi7与XE的变量与函数的改变
    Delphi7·ProgressBar控件
    delphi 进度条
    delphi带包编译详解(build with runtime package)
    TList 的 quicksort 算法研究和使用。
    Delphi7升级到Delphi 2010、Delphi XE、Delphi XE2总结
    Delphi编译错误代码翻译表
    Firebird(火鸟)数据库 v3.0.3.32900官方版
  • 原文地址:https://www.cnblogs.com/sevenyuan/p/8622676.html
Copyright © 2020-2023  润新知