miércoles, 1 de agosto de 2012

Scons en virtualenv

Si están tratando con un proyecto que requiera compilar cosas C, entonces puede que hagan uso de scons.
En Mac me tocó renegar un poco con la instalación de Scons. Usando pip, dentro de mi virtualenv, la instalación fallaba así que usé easy_install, que anduvo perfecto.
$ easy_install scons
Pero scons seguía sin funcionar:
Traceback (most recent call last):
     ...
       import SCons.Script
   ImportError: No module named SCons.Script

Causa y Solución:

Falta setear una variable que aparentemente easy_install no lo hace al instalar scons: SCONS_LIB_DIR, así que lo hacemos con el comando:
$ export SCONS_LIB_DIR=/path/to/venv/lib/python2.7/site-packages/scons-2.1.0-py2.7.egg/scons-2.1.0/
* Reemplazar /path/to/venv con el path a su virtualenv.
** Reemplazar su versión de python por la que sea (python2.7 en mi caso).
*** Al momento de escribir este post la última versión disponible de scons es la 2.1.0. Reemplazar por la que tengan.

Y ya está, scons andando.