谷歌獲取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:\chromium\master就是我們將要簽出代碼的主目錄
 
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:\chromium\master目錄中(這個目錄你自己隨便找個空間足夠的盤建立了,名字隨意)
   然后運行 fetch chromium命令,此時源碼下載就開始了。
    D:\chromium\master>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:\chromium\master>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:\boto.cfg
在該文件中輸入下面的內容(假設代理服務器是  http://http.proxy.com:12345):
[Boto]
proxy= http://http.proxy.com
proxy_port =  12345
 
然后設置環境變量
set NO_AUTH_BOTO_CONFIG=D:\boto.cfg
再執行 fetch chromium或者 gclient sync


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM