v8 引擎,不必多说,大名鼎鼎,迄今最快的js引擎。
这么好的东西,如果尽在浏览器中使用,太浪费了,也希望用到其他地方,比如一些客户端开发中。
闲言少讲,这就开始
下载源码
去官方网站:https://code.google.com/p/v8/
我喜欢用git,所以从这里下载
git clone git://github.com/v8/v8.git v8 && cd v8
编译
我为android平台编译的,折腾了好久,记录一些重点。你首先要看这个:http://code.google.com/p/v8/wiki/BuildingWithGYP
其实关键是
make dependencies
这需要花很长时间(呃,没办法,国内网速不给力,我下载了好几次)。。。
然后,在android上编译(其他平台?so easy,看文档), 你可以先看看D8OnAndroid (是android平台的一个js命令行吧,不明觉厉)的编译,不过没什么用处。
我自己的编译方法,是用交叉编译的
Cross-compiling
Similar to building with Clang, you can also use a cross-compiler. Just export your toolchain (CXX/LINK environment variables should be enough) and compile. For example:
export CXX=/path/to/cross-compile-g++ export LINK=/path/to/cross-compile-g++ make arm.release
(编译等待中.....)
完了之后,你就可以使用了。
在android上使用
首先,创建一个工程(怎么创建?这个。。。还是自己找吧),一个Activity工程就行,然后在工程目录下创建一个jni目录。
具体怎么使用ndk,我就不说,自己找吧,我说重点的:
1. 拷贝头文件和库文件
为了方便,我把头文件和库文件放在jni下的include和li