v8引擎编译全过程

环境vs2019

cmd 命令行需要设置成为代理模式

set http_proxy=http://127.0.0.1:10809

set https_proxy=http://127.0.0.1:10809

这个必须带上,不然报错,告诉编译器win系统的模式

set DEPOT_TOOLS_WIN_TOOLCHAIN=0

源码

GitHub: GitHub - v8/v8: The official mirror of the V8 Git repository.

创建V8文件夹

下载depot_tools工具,并添加到系统环境变量之中

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

重新开CMD命令行

set DEPOT_TOOLS_WIN_TOOLCHAIN=0

fetch v8

gclient sync

拉取V8代码

编译过程

set "GYP_MSVS_OVERRIDE_PATH=C:\Program Files (x86)\Microsoft Visual Studio\2019\Community"

set "WINDOWSSDKDIR=C:\Program Files (x86)\Windows Kits\10"

set "vs2019_install=C:\Program Files (x86)\Microsoft Visual Studio\2019"

set DEPOT_TOOLS_WIN_TOOLCHAIN=0

python build\vs_toolchain.py update --force

gn gen out.gn/ia32.release --args="is_debug=false target_cpu=\"ia32\" v8_static_library=true v8_use_external_startup_data=false v8_use_snapshot=false"

编译V8:使用ninja工具来编译V8。你可以使用以下命令来编译:

ninja -C out.gn/ia32.release v8

生成DLL:编译完成后,就得到了V8DLL

相关推荐
周凡123几秒前
AI 时代的 Web JavaScript 逆向分析实践与思考
前端·javascript·人工智能
十五年专注C++开发1 分钟前
C++17之类模板实参自动推导CTAD
开发语言·c++·聚合初始化·catd
zhoumeina9914 分钟前
分段创建产品,tab 页切换又要保留缓存
前端·javascript
星马梦缘16 分钟前
ACM笔记 学习版本
数据结构·c++·算法
The Sheep 202327 分钟前
EFcore 查询数据
java·javascript
怕浪猫31 分钟前
Electron 开发实战(七):网络通信与 API 集成全解
前端·javascript·electron
Brilliantwxx43 分钟前
【算法从零到千】【1-7】 双指针算法
开发语言·c++·笔记·算法·leetcode·推荐算法
Irissgwe1 小时前
一、Qt 概述
c++·qt·gui·qt creator