Tengo una máquina de alojamiento compartido que ejecuta Linux y estoy tratando de ejecutar Python 3.8.3 en ella.
Tengo Python instalado con pyenv y la versión correcta es global.
$ python --version Python 3.8.3Para que Python funcione con pyenv, agregué estas líneas a ~/.bashrc:
export PATH="~/.pyenv/bin:$PATH" eval "$(pyenv init -)" eval "$(pyenv virtualenv-init -)" export TMPDIR="$HOME/tmp_" export PYENV_ROOT="$HOME/.pyenv" export PATH="$PYENV_ROOT/shims:$PATH"Cuando ejecuto mi script de python, recibo el error:
'No module named '_sqlite3'.Como no tengo acceso de root y no tengo apt disponible, instalé sqlite3 manualmente de acuerdo con esta respuesta .
$ wget http://www.sqlite.org/sqlite-autoconf-3070900.tar.gz $ tar xvvf sqlite-autoconf-3070900.tar.gz $ cd sqlite-autoconf-3070900 $ ./configure --prefix=~/tmp_ $ make $ make installsqlite3 está funcionando, cuando ingreso sqlite3 en la línea de comando, está funcionando:
$ sqlite3 SQLite version 3.7.17 2013-05-20 00:56:22 Enter ".help" for instructions Enter SQL statements terminated with a ";" sqlite> Intenté reinstalar Python con pyenv y vincular Sqlite3 con la siguiente declaración, de acuerdo con esta publicación , pero aún así la respuesta de Python es que no module '_sqlite3' found .
LDFLAGS="-L/home/wazeli1q/tmp_/tmp_/sqlite/lib" CPPFLAGS="-I/home/wazeli1q/tmp_/tmp_/sqlite/include" pyenv install -v 3.8.3El último intento fue instalar sqlite3 en la carpeta .local, pero funcionó ocho veces:
./configure --prefix=$HOME/.local make && make install¿Qué está yendo mal? Solo para dejar en claro: no tengo apt y no tengo derechos de sudo.