google v8 实战 -- 构建v8
来源:互联网 发布:a星算法八皇后问题 编辑:程序博客网 时间:2024/04/29 18:56
title: google v8 实战 -- 构建v8
首先用废话热热身,再来马上很快就讲怎么样构建v8。
事情源起于不久前用Gmail(http://mail.google.com)读《ACM Queue》,里面有
篇文章说google又抛出个叫
o3d(http://code.google.com/intl/zh-CN/apis/o3d/)的东东,支持在浏览器内
实现3D硬件加速,而且还可以用Javascript开发,o3d将引领Web 3D的新风潮。
作为3D兼js爱好者,区区当然要一探究竟啦。花半天把o3d源代码拉下来后,发现
google对o3d的野心不小。刚发布就有了3个主流浏览器的插件、而且配备丰富的
实例和工具库。
但是为什么又是v8呢?仅仅因为o3d也使用了v8,nonono,google的关联推荐从来
都是强大的(这不正是http的本质么?)。哪怕你只看看o3d,你已经同时访问了
code.google.com的服务,同时知道google有简单易用的Sketcup 3D建模软件,并
且o3d中还使用到了和google chrome一样的v8引擎。
Oh God! google已经把技术堡垒都建好了,作为开发人员,我们还是别偷懒,
先……
构建v8
v8的项目主页是http://code.google.com/p/v8/。在其Sources页面下有下载源代
码的方法,本文讲述用源代码构建,如果读者只对binary release感兴趣,请略
过。
如果大家和区区一样,已经安装了svn(http://subversion.tigris.org/),那么
只要在命令行输入:
svn checkout http://v8.googlecode.com/svn/trunk/ v8
即可将v8代码树下载。
或者用TortoiseSVN(http://tortoisesvn.tigris.org/)下载也可以。
打开v8
双击下载的e:/work/v8/tools/visual_studio/v8.sln文件(e:/work是区区的工作
目录,下同),vs2008会提示转换,狂点'finish'/'next'/'ok'就好了。
提下来按F7键,就可以完成构建了。简单吧。
难在前提:
1.最好是安装vs2008,加sp1。(怎么装?这问题,在国内,不好回答,要不你就装express版吧)
2.区区用的是Vista 64位版本,xp应该也没问题
3.要安装有python(http://python.org/)2.5以上版本,或者是ActivePython(http://www.activestate.com/activepython/)
实战一个hello程序
总不能构建完就睡觉了对吧?就直接在v8.sln解决方案中,添加一个
WTL(http://wtl.sourceforge.net/)工程,起名叫v8_hello。(这个随便都行)
在向导后面的部分选择创建模式对话框应用程序即可
WTL的主要代码在MainDlg.h中,直接贴上:
注意这三句包含
#include <v8.h>
#include <comutil.h>
#include "jrutils.h"
其中的conutil.h和jrutils.h完全是为了执行
mslog(_bstr_t(*ascii));而加入,不是必要的。
v8_hello的主要功能在void Try_V8()函数中,这些代码来自v8的Getting
Started文档
(http://code.google.com/intl/zh-CN/apis/v8/get_started.html)中的第二个
例子,注意由于我们拿的是最新代码,第一个例是是编译不过的(没有context和
scope)。
要编译过这个工程,v8_hello必须加入include和lib目录和.lib链接库,对于区
区的机器环境,来说,要在v8_hello的工程属性中设置下面几项:
Configuration Properties_C/C++_General_Additional Include Directories: e:/work/v8/include/
Configuration Properties_Linker_General_Additional Library Directories: e:/work/v8/tools/visual_studio/Debug/lib/
Configuration Properties_Linker_Input_Additional Dependencies:v8.lib Ws2_32.lib Winmm.lib comsuppwd.lib
一切正常的话,按F5运行吧~
至此,我们就v8 say hi了。。
- google v8 实战 -- 构建v8
- google v8 实战 -- 神秘的v8.vcproj
- google v8 编译
- google v8使用示例
- google-v8编译
- vs2015 编译google v8
- google v8使用示例
- Google V8 引擎
- Ubuntu Linux 下 Google Chrome V8引擎的编译实战
- Google Code checkout v8 方法
- Google V8 引擎 原理详解
- 最新Google V8 引擎编译
- 最新Google V8 引擎编译
- Linux环境安装google v8
- Google V8 JS调用C++
- VS2015编译google V8引擎
- Google V8 编程入门(一) - V8对象概览
- Google V8扩展利器发布:v8-native-binding-generator
- Cosoft
- UML用例图的包含,扩展,泛化的详细阐述
- 读《移山之道-VSTS软件开发指南》记一
- 我写的二叉树(采用了三叉链表)
- Javascript面向对象特性
- google v8 实战 -- 构建v8
- string类详解
- Eclipse快捷键大全(转载)
- 做个有技术的人
- 在js中调用C#中的变量
- google v8 实战 -- 神秘的v8.vcproj
- DevExpress.Net框架库解析:DevExpress框架库简介
- 雨的思考!
- EXT中文站