Відповіді:
V8 простий у створенні і не постачається з накладними витратами Java VM від автономного інтерпретатора Javascript від Mozilla. На щастя, V8 поставляється з кодом для побудови консолі. Ось як це зробити:
$> svn co http://v8.googlecode.com/svn/trunk v8-trunk ... $> cd v8-магістраль $> scons $> g ++ ./samples/shell.cc -o v8-shell - я включаю libv8.a
Тепер у нас є окремий двійковий код, який називається v8-shell
.
Запуск консолі:
$> ./v8-shell V8 версія 2.0.2 > var x = 10; > х 10 > функція foo (x) {return x * x; } > foo функція foo (x) {повернення x * x; } > вийти ()
Виконання Javascript з командного рядка:
$> ./v8-shell -e 'print ("10 * 10 =" + 10 * 10) " 10 * 10 = 100
У довідці задокументовано багато інших функцій:
$> ./v8-shell - допомогти Використання: ...
d8
. Дивіться мою відповідь для отримання додаткової інформації.
Щоб створити консоль розробника, а не приклад прикладної програми для іграшок «оболонка», скопіюйте наступні команди у свій термінал.
sudo apt-get install subversion scons libreadline-dev
svn co http://v8.googlecode.com/svn/trunk v8
cd v8/
scons console=readline d8
Ці інструкції будуть працювати для Ubuntu / Debian з "загальним" ядром. Для інших дистрибутивів вам потрібно буде замінити команду apt-get будь-яким пакетом інструменту, який у вас є. У 64-бітних системах вам може знадобитися додати arch=x64
. Ця console=readline
опція дозволяє системі читання ліній , щоб вона відчувала себе трохи більше як стандартна оболонка.
Більш повна документація тут: http://code.google.com/apis/v8/build.html
Примітка:
Дивіться також: Побудова v8 з GYP
arch=x64
щоб створити 64-бітний ubuntu.
./d8
.
Як щодо запуску V8 Javascript через командний рядок за допомогою node.js ?
node.js використовує v8 в якості свого двигуна і додає багато функціональних можливостей.
Наприклад, на Mac OSX, якщо у вас встановлений Homebrew , просто видайте:
$ brew install node
$ node
>
На Mac OS X обов'язково brew
встановлено. Потім просто запустіть команду (sudo) brew install v8
, залежно від вашої машини це може зайняти деякий час. Для запуску консолі V8 просто запустіть v8
- Voilà!
Порада: Щоб вийти з консолі, просто запустіть quit()
і не забудьте дужки!
Ctrl-D
щоб вийти :)
Ctrl-C
вбити його
Я думаю, це могло змінитися. Я читав посібник і будую 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
додано 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
(З JavaScript від aditsu та A-small-practice.in від Google Code Jam)
Дотримуючись інструкцій по збірці ( Google V8 Build Docs ) Google для вашої системи;
[v8 directory]$ cd out/native
[v8 directory]$ ./shell (sample shell)
[v8 directory]$ ./d8 (console: dumb)
Я створив псевдонім у своєму .bash_profile, щоб полегшити виклик оболонки.
alias v8='/Volumes/Dev/GitHub/v8/out/native/shell'
Введення v8 в CLI (у новому терміналі або оболонці - для перезавантаження вашого bash профілю) дає оболонку v8. JavaScript в командному рядку! :)
Якщо ви хочете запустити свій вихідний код JavaScript за допомогою двигуна v8 або будь-якої його версії, ви можете скористатися інструментом командного рядка jsvu . Він розроблений та підтримується інженерами Google, і, крім того, він пропонує функцію встановлення інших двигунів javascript крім v8 , таких як spidermonkey , chakracore , javascriptcore та xs .
Якщо ви плануєте вставляти V8, то будь-яким чином будуйте його та грайте з "d8".
Якщо, з іншого боку, ви не плануєте поширювати V8 або вважати його необов'язковим, тоді просто використовуйте Node.JS. Не турбуйтеся з чистим V8.
Node.js має справді багатий введення-виведення, розширення, бібліотеки (наприклад, Perl CPAN, Python Eggs, Ruby Gems) та спільноту.
-lpthread
доg++
команди під ubuntu 10.04.