vs2015 编译google v8
转自:http://blog.csdn.net/runningman2012/article/details/54692010
系统Win10 64位,vs2015
1.
git 下载depot_tools,git clone https://chromium.googlesource.com/chromium/tools/depot_tools
注意:此过程需要设置代理,git代理,还需要在cmd中设置代理。
a. git config --global http.proxy "127.0.0.1:8888"
b. cmd里,set http_proxy 127.0.0.1:
2.
设置环境变量,在path里添加depot_tools路径。
设置好后,用gclient命令安装一些工具。
之后,命令:fetch v8,可能由于网络原因会报错,没关系,再按照提示运行gclient sync, 此处还会报错,还是网络问题,也许是我的代理不好,多试几次。V8文件夹很大,总共一个1个多G。
如果提示错误,下载不了的话,需要根据提示,自己手动下载缺少的文件,放到v8目录下third_party或tools里面。用git下载,到这里:https://dev.chromium.org/developers/how-tos/install-depot-tools找缺少的东西(别忘使用代理)。 这两个目录里的东西一定要补全,否则后面会保错。
gclient sync 同步完成后,如果不是vs2013,是vs2015,gclient sync最后还会报错,需要在cmd里做如下设置:
set DEPOT_TOOLS_WIN_TOOLCHAIN=0 和 set GYP_MSVS_VERSION=2015 (最新的版本好像只支持vs2013和vs2015)
然后再按照官方的步骤,设置 set GYP_GENERATORS=ninja
3 .
最后生成v8.sln和all.sln文件,用以下命令:
python gypfiles\gyp_v8.py -Dtarget_arch=ia32 -f msvs 或 
python gypfiles\gyp_v8.py -Dtarget_arch=x64 -f msvs
动态链接库的话:
python gypfiles\gyp_v8.py -Dtarget_arch=ia32 -Dcomponent=shared_library -f msv或
python gypfiles\gyp_v8.py -Dtarget_arch=x64 -Dcomponent=shared_library -f msv
这个过程很快。
这里的python我装的是2.7.6(不是depot_tools里面的python)但是版本和depot_tools里的一样,我试过用depot_tools里的python生成sln,但是保错,不知道为什么。如果要装的是python 3.5的话可能会有问题,没有试。
一切顺利的话,在v8/src 下生成v8.sln, 在v8/gypfiles里生成all.sln
4.
最后用vs2015打开v8.sln, 编译release, win32。
注意有几处错误,code_stub_assembler.h, pattern_rewriter.cc这两个文件好像是编码格式有问题,需要保存为unicode 1200格式。文件->高级保存选项。
此外,还有一处报 >>右移操作错误,需要在报错的文件里#pragma disable掉。
再编译就没有问题里。
在v8/build文件夹里,生成Release,lib目录里一共是12个lib文件。
这里倒是没有大的错误,只是有一些警告,但是都会当成错误来处理。
x64有一些问题,是size_t to int的,看着很乱,不知道怎么弄,暂时不管了。
vs2015 编译google v8的更多相关文章
- Windows下 VS2015编译levelDB(nmake)
		VS2015编译levelDB Leveldb是一个google实现的非常高效的kv数据库,非常适合嵌入到程序中.如果有简单的key-value数据库需求,而又想使用一个数据库服务的话,levelDB ... 
- 使用vs2015编译、部署ssd-caffe(weiliu89版,CPU模式)
		前因项目所需,须训练一个快速模型以实现目标物体的实时检测.历经多次实践,发现MobileNetSSD网络符合要求,故在本人工作PC上部署weiliu89版本的ssd-caffe以期用之训练项目要求之模 ... 
- Google V8 引擎 原理详解
		V8 引擎概览 V8 引擎简介 Google V8 引擎使用 C++ 代码编写,实现了 ECMAScript 规范的第五版,可以运行在所有的主流 操作系统中,甚至可以运行在移动终端 ( 基于 ARM ... 
- caffe搭建--caffe- win10 vs2015 编译(支持GPU)--注意在cmake的时候需要根据情况仔细修改配置
		--http://blog.csdn.net/longji/article/details/60964998 注意: 在cmake的时候需要根据情况仔细修改配置,比如,如果gpu的能力不足3.0的话, ... 
- grpc vs2015编译
		获取gRPC源码 gRPC是开源框架,项目代码在github上,所以首先要安装github.github安装后,在指定文件夹中,执行git命令就可以获取gRPC的所有源码. git clone ht ... 
- vs2015编译使用GRPC
		1.获取源码:位于github上 电脑装有git的直接克隆,未装git下载压缩包也可以 git clone https://github.com/grpc/grpc.git cd grpc git ... 
- Hadoop 3.2.1 win10 64位系统 vs2015 编译
		Hadoop 3.2.1 win10 64位系统 vs2015 编译 1 环境配置 1.1 JDK下载安装 1.1.1 下载 JDK 1.8 (jdk1.8.0 ... 
- VS2015编译boost1.62
		VS2015编译boost1.62 Boost库是一个可移植.提供源代码的C++库,作为标准库的后备,是C++标准化进程的开发引擎之一. Boost库由C++标准委员会库工作组成员发起,其中有些内容有 ... 
- VS2015编译Qt5.7.0生成支持XP的静态库(很不错)
		一.编译工具 1.VS2015 编译Qt5.7.0的所需VS版本:Visual Studio 2013 (Update1)或Visual Studio 2015 (Update2).因为Update补 ... 
随机推荐
- quicklink 基本使用
			原理 使用可见性以及预取数据,同时充分利用浏览器的空闲时间,主要是解析href 以通过代码的选项指定需要加载的数据,当然其中 也添加了好多灵活的控制参数,方便我们使用,而且代码很小,压缩之后也就1kb ... 
- GBDT(Gradient Boosting Decision Tree) 没有实现仅仅有原理
			阿弥陀佛.好久没写文章,实在是受不了了.特来填坑,近期实习了(ting)解(shuo)到(le)非常多工业界经常使用的算法.诸如GBDT,CRF,topic model的一些算 ... 
- Delphi中Json格式读写
			Json是一种轻量级传输数据格式,广泛应用互联网和各应用中.json主要採用键值对来表示数据项.多个数据项之间用逗号分隔,也能够用于数组.以下注重介绍一下在delphi中使用json,在delphi中 ... 
- C# to IL 2 IL Basics(IL基础)
			This chapter and the next couple of them will focus on and elicit a simple belief of ours,that if yo ... 
- mysql 的 help 命令:每个命令,都有相应的反斜杠(\)加一个字母或字符的简写
			mysql> help For information about MySQL products and services, visit: http://www.mysql.com/ For d ... 
- spring boot 2  返回Date 格式化问题
			以前 返回数据把Date 转成 long的时间毫秒数.现在是格式化成了字符串. 默认的结果:"createDate": "2018-09-06T10:04:25.000 ... 
- Appium Desktop Inspector 安卓真机配置(Windows)
			本文是基于 Windows环境 通过Appium Desktop 测试真机,首先要确保测试机已经和电脑正确连接(将手机和电脑通过USB数据线连接,手机打开USB调试) 确认电脑与手机是否连接成功的方法 ... 
- Zookeeper命令行auth,digest
			一.auth auth:user:pwd:cdrwa digest:user:BASE64(SHA1(PWD)):cdrwa addauth digest user:pwd 增加用户和密码都是zhan ... 
- ASP.NET AJAX入门系列(4):使用UpdatePanel控件(一)
			UpdatePanel可以用来创建丰富的局部更新Web应用程序,它是ASP.NET 2.0 AJAX Extensions中很重要的一个控件,其强大之处在于不用编写任何客户端脚本,只要在一个页面上添加 ... 
- R3注入的四种方式
			DLL注入 1.首先要获取想要注入的进程句柄(OpenProcess) 2.从要注入的进程的地址空间中分配一段内存(VirtualAllocEx) 3.往分配的内存位置写入要注入的DLL名称(Writ ... 
