日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

从源码编译Chrome(chromium)

發(fā)布時(shí)間:2024/4/14 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 从源码编译Chrome(chromium) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

轉(zhuǎn)自:http://www.udpwork.com/item/13827.html

?

官網(wǎng)描述

http://www.chromium.org/developers/how-tos/build-instructions-windows

為啥還要寫這篇博客

  • 太久沒在這里寫博客
  • Chrome編譯的教程,網(wǎng)上太多太多了,但各種錯(cuò)誤(也許對(duì)他們當(dāng)時(shí)的版本來說并不是錯(cuò)誤)
  • 好多博客沒有把問題說清楚
  • 源碼打包下載(vbox的系統(tǒng)鏡像文件)

    http://pan.baidu.com/s/1ntCHH1Z密碼:nbrm

    如果失效請(qǐng)留言

    第一步,修改系統(tǒng)語言

    切換系統(tǒng)語言為英文!!!!!!

    官網(wǎng)原文:

    You must set your Windows system locale to English, or else you may get build errors about "The file contains a character that cannot be represented in the current code page."

    不改?絕對(duì)的坑!! 報(bào)各種編碼錯(cuò)誤,最后我重新安裝win7旗艦版!!

    必須是x64系統(tǒng)!! 想想內(nèi)存需求也應(yīng)該明白!

    You must have Windows 7 x64 or later. x86 OSs are unsupported.

    再提醒一句, 安裝所有重要的系統(tǒng)補(bǔ)丁, 用windows update服務(wù)安裝!!! 里面包含IE11,必備. – 這一步只是為了保險(xiǎn)起見.

    第二步,安裝VS2013

    官網(wǎng)的要求是VS2013, 不是2008,不是2010,不是2012, 當(dāng)前最新的要求是2013!!

    You must build with Visual Studio 2013 Update 4, no other versions are supported.

    http://www.visualstudio.com/downloads/download-visual-studio-vs

    網(wǎng)絡(luò)安裝或下載iso(6G左右) 均可, 只需要安裝C++套裝,其他一概取消.

    提示: 最后一步安裝update4補(bǔ)丁包的時(shí)候(也就是最后的階段),會(huì)很慢很慢,很慢,不知道為啥,反正很久,等吧.

    第三步,科學(xué)上網(wǎng)

    往下的步驟都需要科學(xué)上網(wǎng),穩(wěn)定的科學(xué)上網(wǎng),可靠的科學(xué)上網(wǎng),別怪我沒提醒你git clone是不支持?jǐn)帱c(diǎn)續(xù)傳的!!!

    第四步,添加環(huán)境變量

    系統(tǒng)的環(huán)境變量加入 DEPOT_TOOLS_WIN_TOOLCHAIN 值為0

    第五步,安裝depot_tools

    下載頁面:http://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up下載地址:https://src.chromium.org/svn/trunk/tools/depot_tools.zip

    解壓到某個(gè)盤的根目錄,別帶中文,特殊字符等一切蛋疼的東西, 修改系統(tǒng)的環(huán)境變量, 把depot_tools的路徑加入到PATH

    啟動(dòng)cmd, 隨便找個(gè)目錄,執(zhí)行

    gclient

    會(huì)自行下載python,git,svn等等依賴工具, 系統(tǒng)已經(jīng)安裝的python,git是不認(rèn)的!!!

    第六步,下載源碼

    重新打開一個(gè)console(cmd或者ComEms均可)

    在一個(gè)剩余空間60G以上的盤, 嚴(yán)重建議是SSD, 起碼是SSD加速盤或混合硬盤

    建一個(gè)文件夾,叫chrome_build, 或任何你喜歡的英文名,別中文啊啊啊啊,假設(shè)為 W:\chrome_build

    W: mkdir chrome_build cd W:\chrome_build

    經(jīng)典做法, 直接fetch

    fetch chromium #會(huì)很久很久

    省流量的方法

    fetch chromium # 出現(xiàn)sync字樣后, 終止(ctrl+c)gclient sync --no-history --force # 需要比較長(zhǎng)的時(shí)間了 # 如果斷開了,重新執(zhí)行g(shù)client語句就可以了,不需要再執(zhí)行fetch.

    別以為sync只是下載源碼, 最后還會(huì)下載nacl的sdk的!!

    第6步補(bǔ)充說明, 關(guān)于下載Webkit

    正常下載的話, 下載webkit會(huì)很久很久,因?yàn)槭钦麄€(gè)歷史都下載下來.

    下面介紹的做法,需要修改DEPS文件, 比較折騰, 自行想象吧.

    看到

    [0:13:08] src/third_party/WebKit

    的時(shí)候,可以終止gclient

    然后,執(zhí)行:

    # 用notepad++ 打開src/DEPS,找到webkit_revision的配置 cd src/third_party/ git clone --depth=10 https://chromium.googlesource.com/chromium/blink.git WebKit #大概下載360mbCloning into 'WebKit'... remote: Sending approximately 5.08 GiB ... remote: Counting objects: 123641, done remote: Finding sources: 100% (123641/123641) remote: Total 123641 (delta 37772), reused 78823 (delta 37772) Receiving objects: 100% (123641/123641), 360.61 MiB | 444.00 KiB/s, done. Resolving deltas: 100% (37772/37772), done. Checking connectivity... done. Checking out files: 100% (144812/144812), done.# 執(zhí)行g(shù)it rev-list找個(gè)可用的rev git rev-list HEAD # 然后找出倒數(shù)第二個(gè)commit的sha1, 修改webkit_revision的值 # 回到根目錄,重新開始gclient gclient sync --no-history --force

    繼續(xù)長(zhǎng)時(shí)間的等待, 真的很久很久, 洗洗睡覺吧.

    PS: v8也很慢, 見仁見智吧.

    第七步, 編譯

    編譯可以說是最簡(jiǎn)單的一步

    先生成各種文件(可以省略)

    gclient runhooks

    執(zhí)行編譯, out/Debug可以改成out/Release等等.

    cd src ninja -C out/Debug chrome

    輸出:

    ninja: Entering directory `out/Debug' [541/19418] RULE Assembling nacl_switch_unwind_win.asm to obj\native_client\sr...ice_runtime\arch\x86_64\service_runtime_x86_64.gen\nacl_switch_unwind_win.obj.Assembling: nacl_switch_unwind_win.asm [19418/19418] STAMP obj\chrome\chrome.actions_rules_copies.stamp

    19418個(gè)編譯任務(wù), 193xx的時(shí)候來開始鏈接,很慢, 我的筆記本電腦i7-3630, 8G內(nèi)存, 32G SSD加速的普通機(jī)械硬盤, 編譯了2小時(shí).

    編譯完成后可以到 out/Debug目錄下找到chrome.exe, 啟動(dòng)一下就是你編譯的Chrome了.

    具體怎么打包成安裝文件,還沒找到方法.

    原文鏈接:?http://wendal.net/2015/02/04.html

    總結(jié)

    以上是生活随笔為你收集整理的从源码编译Chrome(chromium)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。