V8

Mac上如何编译V8

2020-04-14  本文已影响0人  AndroidWorld

V8是由google公司开发的一款高性能、开源的javascript引擎,项目里需要使用V8来执行js,因此想要学习了解下V8的实现原理。打算先把源码下载到本地并编译运行起来。

工欲善其事,必先利其器

V8源码下载

V8官方文档有比较详细的说明,参考https://v8.dev/docs/source-code

安装Git

安装git,如果已经安装请跳过

安装depot_tools

参考https://commondatastorage.googleapis.com/chrome-infra-docs/flat/depot_tools/docs/html/depot_tools_tutorial.html#_setting_up

下载depot_tools

mkdir ~/v8

cd ~/v8

git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git

配置环境变量

export PATH=/path/to/depot_tools:$PATH

更新depot_tools

命令行执行gclient命令

源码下载

fetch v8

cd v8

等待下载完成,时间长短取决于你的网速。

V8源码编译

分支选择

建议选一个稳定分支,参考https://omahaproxy.appspot.com/,笔者选的分支是branch-heads/8.0

cd ~/v8/v8

git checkout -b v_8_0_426_30 origin/branch-heads/8.0

gclient sync #确保最新分支对应的依赖都被下载到本地

编译

参考https://v8.dev/docs/build-gn

tools/dev/gm.py x64.debug

编译完成后会生成out/x64.debug文件夹,如下图

运行d8并尝试执行js代码

上一篇下一篇

猜你喜欢

热点阅读