google_v8学习笔记:NO1 环境搭建以及代码获取

来源:互联网 发布:上海网络机柜 编辑:程序博客网 时间:2024/04/29 03:02

     一直对javascript引擎感兴趣,也看了javascriptcorespidermonkey,对比而言还是感觉Google_V8更适合入门。我主要的编程环境是在ubuntu下。下面从代码的获取开始学起.Ubuntu环境下我们一般获取代码的途径有二种:

①获取源代码

1.通过git来下载 :

git clone git://github.com/v8/v8.git v8
如果提示没有git命令,可以通过以下命令来下载
 sudo apt-get install git

下一步检查是否是最新版本 

    cd v8     git pull -rebase origin master 

 2.通过svn来下载

 首先我们先确定下系统中是否有svn命令,如果没有的话我们可以通过

 sudo apt-get install subversion 
来下载

使用以下命令来获取v8的最新代码

 svn checkout http://v8.googlecode.com/svn/trunk/ v8

 3.如果我们想看历史版本的v8代码,我们可以通过以下网址来获取

https://code.google.com/p/v8/source/browse

安装第三方依赖库

进入v8文件夹后输入以下命令 

make builddeps  
  这个是下载编译过程中所需要的第三方库

 或者

 make dependencies 
这个事下载所有的第三方库,推荐用第一个命令

③编译V8代码

  一般我们用的是gyp来编译,代码在第三方库中,在GCC编译器中,编译命令如下

  编译32位或者64位的代码或者调试模式下或者发布模式下,我们可以使用以下命令来完成,

  make 需要编译的位数 (ia32x64armarm64.调试或者发布(debug,release)。

  比如我们想编译64位下的调试版本的话,命令如下 

make x64.debug

  在用make编译的时候,我们也可以选择别的参数,比如

  如果我们不知道自己的机器是32位还是64位,我们可以选择native来编译,此时可以通过mode=(debug,release)来选择模式。如 make native mode=debug

  -j   是选择并行任务个数, 比如  make x64.debug -j8   

  OUTDIR=foo 表示生成的文件路径,默认是./out/..,如果我们加了这个参数后,生成的文件将存在foo/下

 library=shared (component=shared_library)这两个参数的意思是一样的表示生成动态链接库比如我们在调用V8 要使用到的libv8.so库,需要生成这个文件的话要加这个参数。

   snapshot=off 表示 禁止编译快照,这样会使得V8的处理速度会减慢,一般建议带上ON

因此我们在编译V8的时候可以使用以下命令:

 

  make native mode =release component_shared_librarysnapshot=on  

(如果需要并行编译可以加速-j8)

生成后默认情况下 我们可以在out/native/lib.target下找到生成的共享库文件libv8.so

这里只是简单的说明下编译V8 的过程,其实V8项目的wiki说的更加详细,可以在https://code.google.com/p/v8/wiki/BuildingWithGYP中学习。


                                                               FIGHTING  sixi
  

    


   

    


0 0