Geo*_*lly 115
V8易于构建,并且没有来自Mozilla独立Javascript解释器的Java VM开销.幸运的是,V8附带了用于构建控制台的代码.以下是如何构建这个:
$> svn co http://v8.googlecode.com/svn/trunk v8-trunk ... $> cd v8-trunk $> scons $> g++ ./samples/shell.cc -o v8-shell -I include libv8.a
现在,我们有一个名为的独立二进制文件v8-shell.
运行控制台:
$> ./v8-shell
V8 version 2.0.2
> var x = 10;
> x
10
> function foo(x) { return x * x; }
> foo
function foo(x) { return x * x; }
> quit()
从命令行执行Javascript:
$> ./v8-shell -e 'print("10*10 = " + 10*10)'
10*10 = 100
帮助中记录了更多功能:
$> ./v8-shell --help Usage: ...
buk*_*zor 58
要构建开发人员控制台,而不是示例"shell"玩具应用程序,请将以下命令复制粘贴到终端.
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
Run Code Online (Sandbox Code Playgroud)
这些指令适用于具有"通用"内核的Ubuntu/Debian.对于其他发行版,您需要使用您可用的任何包工具替换apt-get命令.在64位系统上,您可能需要添加arch=x64.该console=readline选项启用了readline系统,使其感觉更像标准shell.
这里有更完整的文档:http: //code.google.com/apis/v8/build.html
注意:

另请参阅:使用GYP构建v8
小智 43
如何使用node.js通过命令行运行V8 Javascript ?
node.js使用v8作为它的引擎,并在其上添加了许多功能.
例如,如果您安装了Homebrew,则在Mac OSX上,只需发出:
$ brew install node
$ node
>
Run Code Online (Sandbox Code Playgroud)
遵循系统的构建说明(Google 的 V8 构建文档)后;
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
Run Code Online (Sandbox Code Playgroud)
我在 .bash_profile 中创建了一个别名以方便调用 shell。
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
Run Code Online (Sandbox Code Playgroud)
在 CLI 中输入 v8(在新的终端或 shell 中——以重新加载 bash 配置文件)会生成 v8 shell。命令提示符下的 JavaScript!:)
我想这可能已经改变了.我阅读了手册并构建了这样的v8:
moose@pc08$ svn co http://v8.googlecode.com/svn/trunk v8-trunk
moose@pc08$ cd v8-trunk
moose@pc08$ make dependencies
moose@pc08$ make ia32.release
Run Code Online (Sandbox Code Playgroud)
添加export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release到我的.bashrc
moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
Run Code Online (Sandbox Code Playgroud)
(使用来自aditsu的 javascript 和来自Google Code Jam的A-small-practice.in)
| 归档时间: |
|
| 查看次数: |
78245 次 |
| 最近记录: |