前言
ry 近期把 deno 的第二版原型从 deno2 文件夹中转移到 src 上了,并初步完成之前定下针对 unprivileged 部分的改造目标:
- Use the gn build system for fast builds, sane configuration, and easy linking into Chrome.
- Use V8 snapshots to improve startup time.
- Remove Golang. Although it has been working nicely, I am concerned the double GC will become a problem sometime down the road.
- Distribute a C++ library called libdeno, containing the snapshotted typescript runtime.
- Test the message passing and other functionality at that layer before involving higher level languages. 翻译:
- 使用 GN 这个构建工具,这是 chromium 团队使用的构建工具
- 使用 V8 Snapshots 提升启动速度(已完成)
- **移除 Golang,**因为不想同时存在两个 GC(Go 和 TS)
- 弄了一个 C++ 库叫 libdeno,负责 TS 的运行时环境
试玩
克隆 Depot Tools
|
|
配置环境变量
这里我是把配置到 .zshrc
文件中
|
|
克隆仓库
|
|
进入到 src 文件夹
|
|
获取包和 v8
|
|
然后你就会在 src
下看到一堆三方包和 v8
被下载下来
安装 js 依赖
|
|
使用 ninja 编译
mac 上得先安装 ccache
不然会报 subcommand failed
错误
|
|
在 src
下进行编译
|
|
试着执行
这样 deno 的执行文件就产生了
接着运行看看
打印出了 v8 的版本 V8 6.8.275.14