Problema al actualizar la versión de Sqlite3 en CentOS para Python
Lo tengo CentOS 6en mi sistema y estoy tratando de actualizar SQLite para Python. Lo instalé desde la fuente y ejecuté la sqlite --versionversión de devoluciones 3.33.0como se esperaba.
Sin embargo, cuando trato de verificar la versión de Python SQLite usando import sqlite3; sqlite3.sqlite_version;, todavía obtengo la versión anterior de SQLite 3.6.20.
Software Locations:
Python 3.6.9 - /usr/bin/python3
Sqlite3 - /usr/bin/sqlite3
He probado la solución aquí , esto no funciona en absoluto, después de actualizar LD_LIBRARY_PATHy verificar la versión de Python SQLite todavía da '3.6.20', y aquí , cuando lo intento sudo LD_RUN_PATH=, me da el error No such file or directory, pero cuando lo ejecuto sin sudo LD_RUN_PATH=, se compila con éxito pero todavía me da SQLite '3.6.20' (Python compilado sin desinstalar).
Nota: tengo varias versiones de python3.
¿Qué puedo hacer para resolver esto?
Respuestas
Cuando lo hice (específicamente tratando de encontrar una manera de actualizar sqlite3 para un programa de Python en ejecución; no funcionó ...), compilé sqlite y obtuve libsqlite3.so.0.8.6, y luego reemplacé el sqlite3 de todo el sistema con ese. Para mí en debian, eso estaba en / usr / lib / x86_64-linux-gnu. Vi (aunque ahora no puedo encontrar dónde) que esta forma puede causar problemas al actualizar en el futuro. Sin embargo, actualizó el sqlite3 de python para mí.
Puede importar versiones específicas:
__requires__= 'sqlite3==3.6.20'
import pkg_resources
pkg_resources.require("sqlite3==3.6.20")
import sqlite
Tenga en cuenta que esto solo funciona en la primera importación. Si sqlite se importa antes que pkg_resources, tomará la última versión.