工欲善其事,必先利其器 , 本文主要講環境的搭建,包括chrome
的編譯與除錯 &&v8
引擎到的編譯與除錯。
測試環境
win10 64 位, visual studio 2015
chrome編譯
visual studio 2015
在不能fq
時,可以按照我的方案來。
如果系統語言是中文
的話還需要,修改非unicode 程式的語言
為英語(美國)
, 如下圖所示
depot_tools
然後解壓depot_tools-2017-1-all.rar
到乙個目錄,目錄名不要有空格
,中文
。然後把目錄新增到環境變數,後面編譯時要用到。
比如我的depot_tools
的目錄是d:\depot_tools\depot_tools
然後新建乙個depot_tools_win_toolchain
系統變數, 其值設為0
.
設定 chromium 原始碼
首先解壓chromium
到乙個目錄,然後解壓develop-for-stable-chromium-58.0.3029.81.zip
檔案,然後拷貝相應資料夾到chromium
原始碼目錄,覆蓋掉相應的資料夾。
編譯
進入原始碼目錄,執行命令,生成編譯需要的檔案和vs 2015
的解決方案。
gn gen out/default --args="enable_nacl=false"
gn args out/default --ide=vs
然後使用ninja
編譯
ninja -c out\default chrome
如果沒有問題,等幾個小時就好了。然後會在out\default
下生成chrome.exe
和相關的dll
和pdb
除錯檔案。
除錯
方案一
使用visual studio 2015
載入all.sln
直接除錯。
方案二
用visual studio 2015
會非常的慢, 可以使用windbg preview
除錯,圖形化,而且快,也有windbg
的強大功能
開啟點選 左上角檔案
, 根據情況設定好即可。
這裡以 除錯node
為例 (原因是node
使用v8
)
首先進入settings
設定符號路徑。
然後根據上上圖設定除錯的程式 和 引數。 點選ok
執行之
設定斷點,斷點斷下來後可以直接定位到原始碼(自己編譯)
除錯資訊非常的直觀
有時漏洞是位於v8
引擎裡面的。 我們可以使用node
或者d8
來除錯v8
,這樣除錯速度比較快。
生成vs
解決方案,然後編譯就行了。
如果在linux
下 直接
./configure --debug && make -j8
博學之,審問之,慎思之,明辨之,篤行之
禮記 中庸 十九章有云 博學之,審問之,慎思之,明辨之,篤行之。這說的是為學的幾個層次,或者說是幾個遞進的階段。博學之 意謂為學首先要廣泛的獵取,培養充沛而旺盛的好奇心。好奇心喪失了,為學的慾望隨之而消亡,博學遂為不可能之事。博 還意味著博大和寬容。惟有博大和寬容,才能相容幷包,使為學具有世界眼光和...
接觸之,熟悉之,打破之
接觸之,熟悉之,打破之 拿破崙小時候就是孩子王,不管同夥伴們玩什麼遊戲,它總是贏家。同時,它更善於改變遊戲規則,以便能夠發揮他自己的優勢。如果能夠成為遊戲規則的左右者,那麼,在當今商戰中必定是最大的贏家。我們處在乙個有著各種各樣遊戲規則的大環境中,每時每刻都要面對不同的遊戲規則,轉換不同的角色,讓自...
手之舞之,足之蹈之
我知道,你認為我在講述天方夜譚。沒有哪個程式設計師可以這樣奢侈,可以這樣幸運。不錯,這確乎是我的幻想。不可求,不可遇。然而,書卻可以擁有這樣的魔力,可以讓這樣的幻想得到實現。感謝richard monson haefel薈萃了這樣乙個團隊,並將他們帶到每乙個讀者身邊,那就是這本薄薄的小書 軟體架構師...