国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
輕松編譯google chrome瀏覽器最新穩(wěn)定版源代碼

寫在開頭

正如一位網(wǎng)友說的,在這個(gè)充滿大量工業(yè)垃圾代碼的環(huán)境,google 開源 chromium的出現(xiàn)無疑給這樣的環(huán)境添加了幾分藝術(shù)氣息。我對此深有同感,確實(shí),在這個(gè)浮躁的大環(huán)境下,我們產(chǎn)出的大部分程序代碼,如果要和google這樣的頂尖技術(shù)公司產(chǎn)出的代碼相比,說我們大部分時(shí)間都在編寫垃圾代碼是不為過的。

但我們不應(yīng)該為此就感到悲觀,畢竟象google這樣的公司集聚的是全世界最頂尖的技術(shù)天才。我等凡人怎能和他們相比,就我個(gè)人而言只能抱著虔誠的心仰視他們的‘藝術(shù)作品’。作為技術(shù)人員,雖然不是每個(gè)人都可以成為天才,但并不妨礙我們站在巨人的肩上讓自己看得更遠(yuǎn)一些。而現(xiàn)在的問題僅僅是有沒有某種內(nèi)因或者外因促使你這樣去做!

如果你已經(jīng)厭倦了每天充斥在你眼前大量的‘垃圾’代碼,不妨把浮躁的心平靜下來欣賞一下‘藝術(shù)品’。google chrome瀏覽器源代碼是一個(gè)很好的開始,雖然其代碼工程非常之龐大(可能在你我看來),但這并沒有影響它的優(yōu)雅性。它是一座‘金礦’,我們的任務(wù)是做好發(fā)掘工作。

編譯步驟

做好發(fā)掘工作的第一步就是獲取代碼并能成功編譯調(diào)試,我這里只談在windows環(huán)境下的編譯,我的操作系統(tǒng)是Windows Server 2008 企業(yè)版,其他windows 環(huán)境應(yīng)該沒有什么大的區(qū)別。其實(shí)我寫此文的目的可能更多的是加深印象,做個(gè)備忘,因?yàn)楣俜矫枋龅木幾g過程已經(jīng)比較清楚了,如果你對官方的文檔描述更感興趣,請參考這里。

注意要下載代碼并完全編譯請準(zhǔn)備至少10G空閑硬盤空間,你的機(jī)器配置越高越好。機(jī)器配置的好壞直接決定你等待編譯的時(shí)間長短。

我這里僅僅是把步驟簡化整理如下:(注意準(zhǔn)備至少10G的)

1.安裝Visual Studio 2008、安裝VS2008 Service Pack 1、安裝vs2008 sp1補(bǔ)丁的補(bǔ)丁KB967631; KB960075; KB958842;KB957912 和KB971092.注意KB971092補(bǔ)丁比較大,共300多M。

2.安裝Windows 7 SDK,最好下載ISO鏡像版,要小很多。注意Windows 6.1 SDK 在39982的修訂版本之后將不再支持。項(xiàng)目版本和日值情況可以到這里查看。安裝完成后,在開始菜單中選擇Windows SDK Configuration Tool和vs2008整合集成。

3.獲取安裝depot_tools工具,這是google自己用python封裝的svn代碼獲取客戶端工具,下載depot_tools.zip并解壓到比如d:/depot_tools目錄。將depot_tools目錄路徑加到PATH環(huán)境變量。然后新建環(huán)境變量GYP_MSVS_VERSION=2008,這個(gè)環(huán)境變量的目的就是最終生產(chǎn)vs2008的工程類型。

4.下載代碼,在比如D:建立一個(gè)chromium的目錄,然后命令行cd到該目錄,明確你需要下載的版本,比如在我寫此文的時(shí)候官方最新發(fā)布的穩(wěn)定版為4.1.249.1059,我要下載此版本的源代碼,先在d:/chromium目錄執(zhí)行

gclient config http://src.chromium.org/svn/releases/4.1.249.1059

該命令并沒有真正下載代碼,而只是做一個(gè)客戶端配置工作,注意由于第一次運(yùn)行g(shù)client,依賴的python和svn工具可能還沒有安裝,此時(shí)gclient會自動下載并安裝,因此你不必單獨(dú)事先安裝svn客戶端和python。你可以在窗口上看到正在安裝python和svn的進(jìn)度提示,你只需要等待,如果中途出錯(cuò),只需要再次執(zhí)行上述命令即可。注意gclient config命令只需要執(zhí)行一次,除非你需要同步其他版本的代碼而改變了配置路徑。該命令完成之后,再執(zhí)行

gclient sync --force

就開始同步下載代碼了,現(xiàn)在的任務(wù)就是等待,根據(jù)你的網(wǎng)絡(luò)情況,可能需要下載半天到一天以上不等,如果中途出錯(cuò),只需要重新執(zhí)行g(shù)client sync –-force,會自動接著上次的下載。注意一定要加--force參數(shù)選項(xiàng),否則可能下載不齊全。

5.編譯代碼,如果一切順利,gclient sync –force執(zhí)行完后,所有代碼完全成功下載,并且自動生成了vs2008的解決方案工程文件,現(xiàn)在直接打開d:/chromium/src/chrome/chrome.sln解決方案文件,把chrome設(shè)置為啟動工程,在chrome工程上點(diǎn)擊右鍵選擇build開始編譯即可。根據(jù)你機(jī)器的配置情況,需要等待20分鐘到2個(gè)小時(shí)以上不等,我在新購T410(I7 CUP、4G內(nèi)存、7200轉(zhuǎn)500G硬盤)筆記本上,編譯了40分鐘。

6.運(yùn)行chrome,編譯完成后,總共有將近200個(gè)依賴工程,最終會在chrome/debug目錄下生成chrome.exe和相關(guān)文件。在vs2008中直接F5運(yùn)行,然后在瀏覽器地址欄輸入‘a(chǎn)bout:’ 回車核實(shí)版本號。如果顯示:

Chromium 
4.1.249.1059 (開發(fā)人員內(nèi)部版本 44723)

WebKit 
532.5

V8 
1.3.18.22

User Agent 
Mozilla/5.0 (Windows; U; Windows NT 6.0; en-US) AppleWebKit/532.5 (KHTML, like Gecko) Chrome/4.1.249.1059 Safari/532.5

恭喜你,版本完全正確!注意我是以寫此文的時(shí)候的最新版為例,你只需要和當(dāng)時(shí)最新發(fā)布的安裝版chrome對比即可。

總結(jié)

整個(gè)過程是很順利的,google把相關(guān)的工作做得非常完美了,不需要涉及到大量復(fù)雜的配置工作。chrome的開源算是google對開源界一個(gè)很大的貢獻(xiàn)吧。gclient是google自己封裝的工具,其本質(zhì)是調(diào)用svn,額外的工作主要在于google代碼倉庫用DEPS文件來描述項(xiàng)目版本之間的依賴關(guān)系,gclient會解析DEPS文件并下載對應(yīng)版本的依賴庫,這是一個(gè)循環(huán)過程。有興趣可以參考depot_tools目錄下相關(guān)python腳本的實(shí)現(xiàn)過程。如果你想下載最新開發(fā)版,注意不要直接配置為http://src.chromium.org/svn/trunk/src,這個(gè)下載下來很可能無法成功編譯,因?yàn)橹鞲缮系拇a隨時(shí)在提交修改,沒有release,所以一定要下載有release的,比如5.0.387.0。整個(gè)工程非常龐大,由此可以看出做一個(gè)真正優(yōu)秀的瀏覽器是多么不容易。代碼中包括了webkit html解析、css解析、v8 js引擎實(shí)現(xiàn)、skia圖形處理、安全技術(shù)、網(wǎng)絡(luò)、數(shù)據(jù)庫、NPAPI插件框架、擴(kuò)展框架、多進(jìn)程、多線程等等技術(shù)主題,如果你對某方面感興趣,不妨對這些藝術(shù)性的代碼進(jìn)行研究學(xué)習(xí)。當(dāng)然對這樣龐大的開源項(xiàng)目進(jìn)行分析學(xué)習(xí)是要講方法和毅力的,后續(xù)我也會對此作相關(guān)的分析和討論。

本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊舉報(bào)。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
vs2017編譯chromium 68穩(wěn)定版本第1篇
CEF中文教程(google chrome瀏覽器控件)
AddressSanitizer (ASan)
cef源碼 編譯基礎(chǔ)
Google 宣布支持使用 Rust 開發(fā) Chromium
WebKit編譯小結(jié)
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服