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

相关推荐
郝学胜-神的一滴1 天前
使用现代C++构建高效日志系统的分步指南
服务器·开发语言·c++·程序人生·个人开发
咖啡の猫1 天前
Vue全局事件总线
前端·javascript·vue.js
T___T1 天前
JavaScript 变量声明详解:var、let、const 的核心差异
javascript·面试
爱凤的小光1 天前
图漾新版看图软件操作手册(待完善版)
c++
豆苗学前端1 天前
10分钟带你入门websocket,并实现一个在线多人聊天室
前端·javascript·后端
luckyPian1 天前
ES6+新特性:ES7(二)
开发语言·javascript·ecmascript
边洛洛1 天前
解决[PM2][ERROR] Script not found: D:\projects\xxx\start
前端·javascript
共享家95271 天前
数据结构-并查集
数据结构·c++·算法
_pengliang1 天前
React Native 使用 react-native-credentials-manager 接入谷歌登录教程
javascript·react native·react.js
console.log('npc')1 天前
使用 Vue3 和 Element Plus 实现选择新增用户集下拉选项框,切换类型,有物业,网格,电子围栏,行政区划管理
javascript·vue.js·elementui