Respuestas:
V8 es fácil de construir y no viene con la sobrecarga Java VM del intérprete independiente de Javascript de Mozilla. Afortunadamente, V8 se envía con un código para construir una consola. Aquí es cómo construir esto:
$> svn co http://v8.googlecode.com/svn/trunk v8-trunk ... $> cd v8-trunk $> scons $> g ++ ./samples/shell.cc -o v8-shell -Incluyo libv8.a
Ahora, tenemos un binario independiente llamado v8-shell
.
Ejecutando la consola:
$> ./v8-shell V8 versión 2.0.2 > var x = 10; > x 10 > función foo (x) {return x * x; } > foo función foo (x) {return x * x; } > salir ()
Ejecutando Javascript desde la línea de comando:
$> ./v8-shell -e 'print ("10 * 10 =" + 10 * 10)' 10 * 10 = 100
Muchas más características están documentadas en la ayuda:
$> ./v8-shell --help Uso: ...
d8
. Vea mi respuesta para más información.
Para construir la consola del desarrollador, en lugar de la aplicación de juguete 'shell' de ejemplo, copie y pegue los siguientes comandos en su terminal.
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
Estas instrucciones funcionarán para Ubuntu / Debian con un núcleo "genérico". Para otras distribuciones, deberá reemplazar el comando apt-get con cualquier herramienta de paquete que tenga disponible. En sistemas de 64 bits, es posible que deba agregar arch=x64
. La console=readline
opción habilita el sistema readline , para que se sienta un poco más como un shell estándar.
Documentación más completa aquí: http://code.google.com/apis/v8/build.html
Nota:
Ver también: Construyendo v8 con GYP
arch=x64
para construir en 64 bits ubuntu.
./d8
.
¿Qué hay de ejecutar V8 Javascript a través de la línea de comandos usando node.js ?
node.js usa v8 como su motor y agrega mucha funcionalidad encima.
Por ejemplo, en Mac OSX si tiene instalado Homebrew , simplemente emita:
$ brew install node
$ node
>
En Mac OS X, asegúrese de tener brew
instalado. Luego, simplemente ejecute el comando (sudo) brew install v8
, dependiendo de su máquina, esto puede llevar algún tiempo. Para iniciar la consola V8, solo ejecuta v8
- ¡Voilà!
Sugerencia: Para salir de la consola, simplemente ejecute quit()
y no olvide los paréntesis.
Ctrl-D
para salir :)
Ctrl-C
para matarlo
Creo que esto podría haber cambiado. Me leído el manual v8 y la acumulación de esta manera:
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
agregado export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
a mi .bashrc
moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
(Con javascript de aditsu y A-small-practice.in de Google Code Jam)
Después de seguir las instrucciones de compilación ( V8 Build Docs de Google ) para su sistema;
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
Creé un alias en mi .bash_profile para facilitar la invocación del shell.
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
Al escribir v8 en la CLI (en una nueva Terminal o shell, para recargar su perfil bash) se obtiene el v8 shell. JavaScript en el símbolo del sistema! :)
En caso de que desee ejecutar su código fuente javascript utilizando el motor v8 o cualquier versión del mismo, puede utilizar la herramienta de línea de comandos jsvu . Es desarrollado y mantenido por los ingenieros de Google y, además, ofrece la característica de la instalación de otros motores de JavaScript aparte de v8 , como spidermonkey , chakracore , JavaScriptCore y XS .
Si planeas incrustar V8, entonces, por supuesto, compílalo y juega con "d8".
Si, por otro lado, no planea extender V8 o tratarlo como opcional, simplemente use Node.JS. No te molestes con el puro V8.
Node.js tiene E / S verdaderamente ricas, extensiones, bibliotecas (como Perl CPAN, Python Eggs, Ruby Gems) y comunidad.
-lpthread
alg++
comando en ubuntu 10.04.