编译v8需要开启vpn,需要下载代码和依赖项。
google 编译文档 https://github.com/v8/v8/wiki/Building%20from%20Source
1、安装git
2、安装depot_tools,安装方法参照 https://www.chromium.org/developers/how-tos/install-depot-tools,注意下载解压的路径不能有空格,并将解压路径添加至环境变量path,
如果一切正常的话在depot_tools目录下应该有python276_bin目录, 将此路径添加至path
3、运行gclient(好像是更新depot_tools和下载一些依赖项)
4、cd到你需要下载v8源码的目录,执行fetch v8 ,下载需要较长的时间(大概1G),下载的是github上最新的,(此时应该是v5.7)
5、cd 到v8 目录
6、运行
set DEPOT_TOOLS_WIN_TOOLCHAIN=0
set GYP_MSVS_VERSION=2015
set GYP_GENERATORS=ninja
python gypfiles\gyp_v8(google文档这样操作,但是在build目录下却找不到all.sln)
使用下面方法中的其中一种,-Dtarget_arch指定平台 -Dcomponent=shared_library 动态库 没有则是静态库
python gypfiles\gyp_v8.py -Dtarget_arch=x64 -Dcomponent=shared_library -f msvs
python gypfiles\gyp_v8.py -Dtarget_arch=ia32 -Dcomponent=shared_library -f msvs
python gypfiles\gyp_v8.py -Dtarget_arch=x64 -f msvs
python gypfiles\gyp_v8.py -Dtarget_arch=ia32 -f msvs
在gypfiles目录下应该就可以看到All.sln解决方案了。
对于需要将v8嵌入到c++程序的 ,建议看官方文档说明
https://github.com/v8/v8/wiki/Embedder's%20Guide