zoukankan      html  css  js  c++  java
  • 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]

  • 相关阅读:
    [转]CentOS 修改yum源为国内源
    著名的镜像网站
    [译]LRTHW练习五——更多的变量及输出打印
    CentOS足迹一
    LRTHW笔记二
    线程的创建和运行(未完待续)
    比较当前时间和给定时间大小
    单独管理image
    Java 修改页面排序条件
    Java 如何使用radio button保存值
  • 原文地址:https://www.cnblogs.com/liuning8023/p/2752909.html
Copyright © 2011-2022 走看看