javascript
javascript引擎V8精要(2)
為了能夠在Windows/Linux/macOS for x64上從頭開(kāi)始構(gòu)建V8,請(qǐng)遵循以下步驟。
獲取V8源代碼
V8的Git存儲(chǔ)庫(kù)位于https://chromium.googlesource.com/v8/v8.git,GitHub上有官方鏡像:https://github.com/v8/v8.git。
按照我們的指南中的說(shuō)明得到V8源代碼。
V8是在GN的幫助下制造的。GN是一種元構(gòu)建系統(tǒng),因?yàn)樗鼮樵S多其他構(gòu)建系統(tǒng)生成構(gòu)建文件。因此,如何構(gòu)建取決于所使用的“后端”構(gòu)建系統(tǒng)和編譯器。
下面的說(shuō)明假設(shè)您已經(jīng)獲取了V8,并且已經(jīng)安裝了構(gòu)建依賴項(xiàng)。
更多關(guān)于GN的信息可以在Chromium的文檔或GN自己的文檔中找到。
從源代碼構(gòu)建V8包括三個(gè)步驟:
生成編譯文件
編譯
運(yùn)行測(cè)試
構(gòu)建V8有兩個(gè)工作流:
方便的工作流使用了一個(gè)名為gm的助手腳本,它很好地結(jié)合了這三個(gè)步驟
原始工作流,您可以在較低級(jí)別上手動(dòng)為每個(gè)步驟運(yùn)行單獨(dú)的命令
gm是一個(gè)方便的多功能腳本,它可以生成構(gòu)建文件,觸發(fā)構(gòu)建,還可以運(yùn)行測(cè)試。可以在V8源碼上tools/dev/gm.py上找到它。建議在shell配置中添加別名
alias gm=/path/to/v8/tools/dev/gm.py然后可以使用gm為已知配置構(gòu)建V8,例如x64.release:
gm x64.release要在生成后立即運(yùn)行測(cè)試,請(qǐng)運(yùn)行:
gm x64.release.checkgm輸出它正在執(zhí)行的所有命令,以便在必要時(shí)跟蹤和重新執(zhí)行它們。
gm可以通過(guò)一個(gè)命令構(gòu)建所需的二進(jìn)制文件并運(yùn)行特定的測(cè)試:
gm x64.debug mjsunit/foo cctest/test-bar/*總結(jié)
以上是生活随笔為你收集整理的javascript引擎V8精要(2)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: MySQL的INSERT INTO···
- 下一篇: Swagger介绍及使用