JavaScript 引擎——Visual Studio 环境生成 V8 引擎

本文内容

  • 下载 V8
  • 生成 V8 先决条件:安装 GYP
  • Visual Studio 先决条件
  • 生成 V8 引擎
  • 演示生成 V8 引擎
  • 修改记录

 

下载 V8


下载 V8 https://developers.google.com/v8/build

 

生成 V8 先决条件:安装 GYP


首先,需要 GYP。在你想 make 程序的系统上(Linux、Mac、cygwin,大多数其他的 Unix 系统),很容易做:

make dependencies

另外,如在 Windows 下,你需要手动获得 GYP。用 svn 签出 gyp 并放到 V8 目录的 build 目录下:

svn co http://gyp.googlecode.com/svn/trunk build/gyp

 

Visual Studio 先决条件


在 Windows 系统,需要先安装其他依赖:

1,Python。你可以有很多选择:

svn co http://src.chromium.org/svn/trunk/tools/third_party/python_26@89111 third_party/python_26
  • 使用 cygwin,而不是通常的 Windows 命令行。另外一个推荐的方式是,把 python.exe 放到 PATH 环境变量。

2,Chromium 提供的 cygwin 安装程序。这个是必需的,否则生成时会失败:

svn co http://src.chromium.org/svn/trunk/deps/third_party/cygwin@66844 third_party/cygwin

 

生成 V8 引擎


根据以上必需和可选的额外依赖,有两种生成方式。

方式一:命令行方式
  • 创建项目文件
python build\gyp_v8

若没有将 python.exe 路径设置到 PATH 环境变量,则执行时要指定路径。若想生成 64 位二进制(需要用64 位 Visual Studio 来生成),则追加 -Dtarget_arch=x64 参数。若想在 ia32 和 x64 之间切换,则需要在重新产生前,手动删除已产生的 .vcproj/.sln 文件。如下所示:

third_party/python_26/python.exe build\gyp_v8 -Dtarget_arch=x64
  • 生成

或者用 Visual Studio 打开 build\All.sln,或按如下方式(根据路径实际情况,或简单将 devenv.com 命令设置到 PATH 里)在命令行编译:

"c:\Program Files (x86)\Microsoft Visual Studio 9.0\Common7\IDE\devenv.com" /build Release build\All.sln

Debug 参数替换 Release 参数以调试模式生成。

方式二:使用 cygwin。该方式流程相同,只是语法稍有不同。
  • 创建项目文件
build/gyp_v8

这将提示一堆关于缺少输入文件的警告,忽略它们就行。

  • 生成
/cygdrive/c/Program\ Files\ (x86)/Microsoft\ Visual\ Studio\ 9.0/Common7/IDE/devenv.com /build Release build/all.sln
自定义生成设置

看考“自定义生成设置”。

 

演示生成 V8 引擎


这里是 Google 给出的生成步骤。但理论是理论,对于不熟悉的人来说,要想成功生成着实得花点心思。其实,在你下载的 *\V8\build 目录下的 README.txt 文件有较详尽的生成说明。唯一需要注意的是,你所下载的东西,要放到正确的路径,否则,无论是创建项目/解决方案,还是生成 V8 都会失败。

本文生成 V8 引擎是在 Windows 7 64 位操作系统,用 Visual Studio 2010。

根据以上描述,你下载了如下内容:

  • V8
  • gyp
  • cypwin
  • python_26

下载后,无论程序在什么位置,最后,必须将:

  • gyp 放到 V8\build 目录下
  • cypwin 和 python_26 放到 V8\third_party 目录下

否则,就要手动改人家项目文件,这就麻烦了。

接下来,无论是创建项目/解决方案,还是最终生成 V8 都不会有太大问题。

D:\Program Files\VisualSVN Server\bin\v8>python build\gyp_v8
Updating projects from gyp files...
 
D:\Program Files\VisualSVN Server\bin\v8>

 

D:\Program Files\VisualSVN Server\bin\v8>devenv.com /build release build\all.sln
 
 
Microsoft(R) Visual Studio 10.0.30319.1 版。
版权所有(C) Microsoft Corp。保留所有权利。
 
……
 
13>生成成功。
13>
13>已用时间 00:00:51.27
16>------ 已跳过生成: 项目: All ------
16>
========== 生成: 成功 15 个,失败 0 个,最新 0 个,跳过 1 个 ==========
 
D:\Program Files\VisualSVN Server\bin\v8>

 

2012-11-04_120930

图 1 V8 目录内容

2012-11-04_121046

图 2 V8\build 目录内容

2012-11-04_121233

图 3 V8\build\release 目录内容

2012-11-04_121352

图 4 V8\build\release\lib 目录内容

 

修改记录


  • 第一次 2012-11-4 [UPDATE][ADD]

posted @ 2012-11-03 19:50  船长&CAP  阅读(2343)  评论(0编辑  收藏  举报
免费流量统计软件