Como compilar V8
Jan 07, 2011 | Español | By Crysfel | 7 CommentsJavaScript esta creciendo a un ritmo acelerado, día a día aparecen nuevos proyectos en GitHub, nuevos frameworks, nuevas herramientas, es increíble ver todo lo que podemos hacer con este lenguaje.
JavaScript esta creciendo a un ritmo acelerado, día a día aparecen nuevos proyectos en GitHub, nuevos frameworks, nuevas herramientas, es increíble ver todo lo que podemos hacer con este lenguaje.
Ultimamente he estado investigando y realizando algunos experimentos con JavaScript del lado del servidor, el día de hoy quiero mostrarle como compilar V8 para poder escribir y ejecutar JavaScript desde una consola.
Acerca de V8
V8 es el engine de JavaScript usado por Google Chrome, es un proyecto Open Source lo que significa que podemos descargar el código fuente y compilarlo sin problema alguno, este engine es extremadamente rápido ya que no utiliza un intérprete para ejecutar código JavaScript sino que compila el código a código de máquina, esto permite que la ejecución sea mucho más rápida.
Podemos compilar V8 en cualquier plataforma, para este tutorial compilaré en un Mac OS, pero el proceso es el mismo para todas las plataformas.
Pre requisitos
Para poder compilar el código necesitaremos las siguientes herramientas:
- Git – Para descargar el código fuente desde GitHub
- Subversion 1.4 o superior – Para descargar el código fuente de Google Code
- Python 2.4 o superior – Para ejecutar SCons
- SCons 1.0.0 – Para configurar y ejecutar el compilador
Solamente es necesario tener instalado Git o SVN, dependiendo de donde desees descargar el código fuente.
También es importante contar con un compilador de C++, si estas en Linux o Mac seguramente tendrás instalado Gnu Compiler (GCC), para windows deberás tener alguna versión de Visual Studio (2005 o 2008), o bien Visual C++ 2008 Express Edition que es un versión gratuita, además de agregar algunas variables de ambiente y configuraciones extras.
Si estás trabajando en un Mac y ya tienes instalado el “Apple’s Xcode” ya tienes instalado un SVN, Python y el GCC, unicamente necesitas instalar SCoons.
Para verificar que todo esta instalado correctamente puedes revisar la versión de cada herramienta de la siguiente manera.
$ svn --version $ git --version $ python -V $ scons --version
Si todo está instalado bien deberás poder ver las versiones de cada programa.
Descargando el código fuente
Una vez que tenemos todo listo procederemos a descargar el código fuente desde GitHub.
$ git clone git://github.com/v8/v8.git v8 $ cd v8
O si lo deseas desde el SVN en Google Code.
svn checkout http://v8.googlecode.com/svn/trunk/ v8 cd v8
Una vez descargado el Código fuente procederemos a compilarlo.
Compilar el código fuente
Para compilar el código fuente utilizaremos SCoon, el siguiente comando hará todo lo necesario.
$ scons sample=shell mode=release snapshot=on
Ejecutando JavaScript desde la consola
Una vez que termina de compilar podremos comenzar a escribir las primeras pruebas, es importante mencionar que no tenemos soporte para DOM no tampoco existen los objetos como “window” o “document”.
Para ejecutar el engine escribimos en la consola la siguiente instrucción:
$ ./shell
V8 version 2.4.8 (candidate)
> print("Hello, V8! this is my first test!");
Hello, V8! this is my first test!
> quit();
También podemos escribir el código en un archivo y luego ejecutarlo de la siguiente manera:
$ ./shell test.js
Conclusión
Una vez que tenemos el engine listo tenemos un mundo de posibilidades, en futuros tutoriales hablaré sobre Node.js que básicamente es un V8 con varias otras API’s y Módulos que podemos agregarle para poder crear un servidor web, aplicaciones en tiempo real de alto rendimiento, servicios webs, acceso a disco, base de datos, etc.
Les recomiendo unirse a la comunidad de Quizzpot, actualmente estamos en crecimiento y tenemos una iniciativa de crear un proyecto Open Source que nos servirá para aprender y compartir lo que sabemos.





Commercial ExtJs and Sencha Touch Themes


Lo que más me llama la atención de esto es la posibilidad de alternativas a AdobeAir, porque hasta el momento titanium de appacelerator para mi a sido un fail, y nunca me ha gustado mucho adobe (a no ser que abrieran el código de AdobeAir XD).