sql >> Base de Datos >  >> RDS >> Mysql

virtualenv que puede encontrar bibliotecas reubicadas (como mysqlclient lib para MySQLdb)

Sé que esta pregunta es un poco antigua, pero me encantaría compartir mi solución por la falta de encontrarla a través de Google:

En el deactivate () función, agregue las siguientes líneas:

    if ! [ -z ${_OLD_LD_LIBRARY_PATH+x} ] ; then
        LD_LIBRARY_PATH="$_OLD_LD_LIBRARY_PATH"
        export LD_LIBRARY_PATH
        unset _OLD_LD_LIBRARY_PATH
    fi

Tenga en cuenta que estoy usando un -z negado expresión:los scripts de restablecimiento existentes para PATH y PYTHONHOME usa -n , que se evalúa incorrectamente como falso si _OLD_LD_LIBRARY_PATH se establece en una cadena vacía.

Luego, debajo de deactivate () función, agregue la siguiente sección:

_OLD_LD_LIBRARY_PATH="$LD_LIBRARY_PATH"
LD_LIBRARY_PATH="$VIRTUAL_ENV/lib:$LD_LIBRARY_PATH"
export LD_LIBRARY_PATH