今天编译了V8,现在V8编译是依赖GYP是谷歌一个用python写的工作方便代码管理,可以生成多种项目文件。
1.编译V8
1.首先下载了VS2010 ultimate,安装了SP1补丁,这个补丁一定要装,个人感觉基本都要装SP1,VS2005需要更多补丁
2. 安装Cygwin和Python下载GYP工具虽然自己安装了cygwin但是最好还是下载一下,cygwin和python版本最好一致
下载 V8源代码,SVN客户端还是感觉不好用,用SVN命令下载吧
svn checkout http://v8.googlecode.com/svn/trunk/ v8
svn co http://gyp.googlecode.com/svn/trunk build/gyp gyp
svn co http://src.chromium.org/svn/trunk/deps/third_party/cygwin@66844 third_party/cygwin
svn co http://src.chromium.org/svn/trunk/tools/third_party/python_26@89111 third_party/python_26
注意是在v8根目录
运行python解析GYP产生项目文件 third_party\python_26\python build/gyp_v8
build\All.sln编译,默认产生是VS2010或者可以设置为VS2008但是我试着设置2005没有效果
编译时候老问题,需要把VC里面的treate wanning as error 干掉
编译完了,令我吃惊的是没有找到V8.lib最后各方求证得到结论是现在V8单个项目不产生V8.lib文件,产生四个lib v8_base.lib;preparser_lib.lib;v8_nosnapshot.lib;v8_snapshot.lib
使用时候在项目里面的src/include找到v8.h文件引用,依赖四个lib,同时不要忘记一下两个lib
#pragma comment(lib,"ws2_32.lib")
#pragma comment(lib,"winmm.lib")