Después de crear y activar su virtualenv:
virtualenv --no-site-packages env
source env/bin/activate
pip install [your libs]
Debe definir la variable de entorno PYTHONPATH en la ruta de instalación de Python de su QGIS.
cambie [qgispath] a la ruta de su qgis:
export PYTHONPATH=/[qgispath]/share/qgis/python
también será necesario establecer LD_LIBRARY_PATH
export LD_LIBRARY_PATH=/[qgispath]/lib
para evitar este error
>>> import qgis.core
ImportError: libqgis_core.so.1.5.0: cannot open shared object file: No such file or directory
Su pythonpath está configurado solo para virtualenv y para su sesión. Si desea configurarlo automáticamente bajo este virtualenv, puede crear un archivo
env/lib/python2.7/site-packages
con un archivo .pth.
La forma más conveniente es agregar un archivo de configuración de ruta a un directorio que ya está en la ruta de Python, generalmente al directorio ... / site-packages /. Los archivos de configuración de ruta tienen una extensión de .pth, y cada línea debe contener una ruta única que se agregará a sys.path. (Debido a que los nuevos caminos se anexan a sys.path, módulos en los directorios añadidos no harán caso omiso de módulos estándar. Esto significa que no pueden utilizar este mecanismo para la instalación de versiones fijos de módulos estándar.) Fuente
para crear y llenar el archivo, use un comando como ese:
cat > [yourVirtualEnv]/lib/python2.7/site-packages/qgispythonpath.pth << /[qgispath]/share/qgis/python
Se encuentra en el libro de cocina Python Qgis y una respuesta relacionada establece pythonpath