Usando Ubuntu 10.04 LTS (32 bits) y v8cgi 0.9.2

Seguimos los pasos de Compiling v8cgi y How to Download and Build V8.

Prerrequisitos

# tools
sudo apt-get install subversion python scons perl-doc
# libraries
sudo apt-get install libpq-dev libmysqlclient-dev libsqlite3-dev \
    libfcgi-dev libgd2-xpm-dev libxerces-c-dev freeglut3-dev \
    libglew1.5-dev apache2-threaded-dev

Compilar e instalar

Bajamos la última versión (0.9.2) y compilamos (primero V8 y después v8cgi):

V8CGIVERS="0.9.2"
mkdir -pv ${HOME}/soft
cd ${HOME}/soft

# bajo y abro el paquete
wget http://v8cgi.googlecode.com/files/v8cgi-${V8CGIVERS}-src.tar.gz
tar xvzf v8cgi-${V8CGIVERS}-src.tar.gz
cd v8cgi-${V8CGIVERS}-src

# compilo v8 (con la librería en modo shared)
cd ${HOME}/soft/v8cgi-${V8CGIVERS}-src/v8
scons library=shared

# instalo la shared library que acabo de compilar
# y la linkeo a /usr/lib
sudo cp -v libv8.so /usr/local/lib/v8
sudo cp -v libv8preparser.so /usr/local/lib/v8/
sudo ln -sfv /usr/local/lib/v8/libv8.so /usr/lib/
sudo ln -sfv /usr/local/lib/v8/libv8preparser.so /usr/lib/


# compilo v8cgi
cd ${HOME}/soft/v8cgi-${V8CGIVERS}-src/v8cgi

# compilo con opciones para que agregue soporte postgresql (ver si queremos también 'reuse context')
# como tengo errores de memcached, se lo deshabilito
scons pgsql=1 fcgi=0 memcached=0


# instalo el módulo apache y el ejecutable
sudo cp -v mod_v8cgi.so /usr/local/lib/v8
sudo cp -v v8cgi /usr/local/bin/

# instalo las librerías compartidas y javascripts
sudo rm -rfv /usr/local/lib/v8/v8cgi
sudo mkdir -pv /usr/local/lib/v8/v8cgi
sudo cp -v lib/* /usr/local/lib/v8/v8cgi

# instalo el archivo de configuración por default
# cambiándole el path donde va la librería (/usr/local/lib/v8 en lugar de /usr/lib)
sudo sh -c "sed -e 's#/usr/lib#/usr/local/lib/v8#' v8cgi.conf.posix > /etc/v8cgi.conf"

# creo e instalo la manpage de v8cgi
sudo sh -c "pod2man v8cgi.pod > /usr/local/share/man/man1/v8cgi.1"
sudo gzip /usr/local/share/man/man1/v8cgi.1

# creo los archivos de configuración del módulo apache
sudo sh -c "echo 'LoadModule v8cgi_module /usr/local/lib/v8/mod_v8cgi.so'  > /etc/apache2/mods-available/v8cgi.load"
sudo sh -c "echo 'AddHandler v8cgi-script .sjs .ssjs .jst'  > /etc/apache2/mods-available/v8cgi.conf"

Habilitar/deshabilitar el módulo apache

Ahora, el módulo apache se habilita o deshabilita igual que cualquier otro módulo (el nombre del módulo es v8cgi).

Para habilitarlo:

sudo a2enmod v8cgi

Para deshabilitarlo:

sudo a2dismod v8cgi

Recordar que siempre después de habilitar o deshabilitar un módulo hay que reiniciar el apache:

sudo invoke-rc.d apache2 restart

CompilarModuloV8CgiEnUbuntu (última edición 2011-12-17 15:18:54 efectuada por MarianoAbsatz)