Antworten:
V8 ist einfach zu erstellen und wird nicht mit dem Java VM-Overhead von Mozillas eigenständigem Javascript-Interpreter geliefert. Glücklicherweise wird V8 mit Code zum Erstellen einer Konsole geliefert. So bauen Sie das:
$> svn co http://v8.googlecode.com/svn/trunk v8-trunk ... $> cd v8-trunk $> Scons $> g ++ ./samples/shell.cc -o v8-shell -Ich schließe libv8.a ein
Jetzt haben wir eine eigenständige Binärdatei namens v8-shell
.
Ausführen der Konsole:
$> ./v8-shell V8 Version 2.0.2 > var x = 10; > x 10 > Funktion foo (x) {return x * x; }} > foo Funktion foo (x) {return x * x; }} > quit ()
Ausführen von Javascript über die Befehlszeile:
$> ./v8-shell -e 'print ("10 * 10 =" + 10 * 10)' 10 * 10 = 100
Viele weitere Funktionen sind in der Hilfe dokumentiert:
$> ./v8-shell --help Verwendung: ...
d8
. Siehe meine Antwort für weitere Informationen.
Kopieren Sie die folgenden Befehle in Ihr Terminal, um die Entwicklerkonsole anstelle der beispielhaften Spielzeuganwendung "Shell" zu erstellen.
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
Diese Anweisung funktioniert für Ubuntu / Debian mit einem "generischen" Kernel. Bei anderen Distributionen müssen Sie den Befehl apt-get durch das verfügbare Paket-Tool ersetzen. Auf 64-Bit-Systemen müssen Sie möglicherweise hinzufügen arch=x64
. Die console=readline
Option ermöglicht es dem Readline- System, dass es sich ein bisschen mehr wie eine Standard-Shell anfühlt.
Eine vollständigere Dokumentation finden Sie hier: http://code.google.com/apis/v8/build.html
Hinweis:
Siehe auch: Erstellen von Version 8 mit GYP
arch=x64
, um auf 64-Bit-Ubuntu aufzubauen.
./d8
.
Wie wäre es mit V8 Javascript über die Befehlszeile mit node.js ?
node.js verwendet v8 als Engine und fügt darüber hinaus viele Funktionen hinzu.
Wenn Sie beispielsweise unter Mac OSX Homebrew installiert haben, geben Sie einfach Folgendes aus:
$ brew install node
$ node
>
Stellen Sie unter Mac OS X sicher, dass es brew
installiert ist. Führen Sie dann einfach den Befehl aus (sudo) brew install v8
. Je nach Computer kann dies einige Zeit dauern. Um die V8-Konsole zu starten, führen Sie einfach v8
- Voilà!
Tipp: Um die Konsole zu verlassen, führen Sie sie einfach aus quit()
und vergessen Sie die Klammern nicht!
Ctrl-D
zu beenden :)
Ctrl-C
um es zu töten
Ich denke, das könnte sich geändert haben. Ich habe das Handbuch gelesen und v8 wie folgt erstellt:
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
export PATH=${PATH}:/home/moose/Downloads/v8-trunk/out/ia32.release
zu meiner .bashrc hinzugefügt
moose@pc08 ~ $ source ~/.bashrc
moose@pc08 ~ $ d8 A_tic_tac_toe_Tomek.js < A-small-practice.in
(Mit Javascript von aditsu und A-small-practice.in von Google Code Jam)
Befolgen Sie die Build-Anweisungen ( Googles V8-Build-Dokumente ) für Ihr System.
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
Ich habe in meinem .bash_profile einen Alias erstellt, um den Aufruf der Shell zu erleichtern.
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
Wenn Sie v8 an der CLI eingeben (in einem neuen Terminal oder einer neuen Shell - um Ihr Bash-Profil neu zu laden), erhalten Sie die v8-Shell. JavaScript an der Eingabeaufforderung! :) :)
Wenn Sie Ihren Javascript-Quellcode mit der v8- Engine oder einer anderen Version davon ausführen möchten , können Sie das Befehlszeilentool jsvu verwenden. Es wird entwickelt und gepflegt von Google - Ingenieure und außerdem bietet es die Funktion der Installation andere Javascript - Motoren abgesehen von v8 , wie Spidermonkey , chakracore , Javascript und xs .
Wenn Sie V8 einbetten möchten, bauen Sie es auf jeden Fall und spielen Sie mit "d8".
Wenn Sie andererseits nicht vorhaben, V8 zu erweitern oder als optional zu behandeln, verwenden Sie einfach Node.JS. Kümmere dich nicht um reinen V8.
Node.js verfügt über wirklich umfangreiche E / A, Erweiterungen, Bibliotheken (wie Perl CPAN, Python Eggs, Ruby Gems) und Community.
-lpthread
zumg++
Befehl unter Ubuntu 10.04 hinzufügen .