Python3 schlägt fehl, sqlite3 zu importieren

1205
user96

Ich habe gerade ein Python-Modul von meinem OS X-System nach Ubuntu übertragen. Das Modul läuft einwandfrei auf dem Mac, schlägt jedoch auf dem Ubuntu-System mit dem folgenden Fehler fehl:

sqlite3 importieren

Datei "/usr/local/lib/python3.4/sqlite3/ init .py", Zeile 23, aus sqlite3.dbapi2 import *

Datei "/usr/local/lib/python3.4/sqlite3/dbapi2.py", Zeile 26, aus _sqlite3 import *

ImportError: Kein Modul mit dem Namen '_sqlite3'

Einige der Antworten, die ich bisher gefunden habe, scheinen nicht anzuerkennen, dass dieser Fehler in den Python-Bibliotheken generiert wird. Andere schlagen eine Neuinstallation von Python und / oder Sqlite vor. Ich habe beide neu installiert (erzwungene Neuinstallationen), um sicherzustellen, dass Python3 nach Sqlite3 installiert wurde. Immer noch keine Freude.

Wie gesagt, der Code läuft auf dem Mac. Vor der Einführung von sqlite3 lief die allgemeine Codebasis auch auf Ubuntu. Mehrere Installationen und Updates in der Vergangenheit, für ähnliche Anwendungen habe ich sqlite3 mit früheren Versionen von Python (vielleicht nicht mit Python3?) Verwendet. Ich bin auf der Suche nach zusätzlichen Vorschlägen - zur Behebung von Fehlern oder zur Fehlersuche.

1

2 Antworten auf die Frage

0
MariusMatutiae

Sie haben anscheinend schon viele Lösungen ausprobiert, daher weiß ich nicht genau, ob dies für Sie neu ist oder nicht. Jedenfalls hatte ich ein ähnliches Problem mit dem gleichen genauen Fehlercode. Meine Notizen besagen, dass ich dieses Problem durch die Installation der Entwicklerversion der Bibliothek gelöst habe libsqlite3-dev.

Mit der Zeit habe ich herausgefunden, dass dies eine gute empirische Regel ist: Wenn etwas fehlschlägt und Sie denken, Sie hätten alle relevanten Pakete, liegt das Versagen am fehlenden -devBibliothekspaket.

Sollte das nicht reichen, wie wäre es mit einem strace? Vielleicht kann dies hilfreiche Informationen hinzufügen.

Vielen Dank für den Vorschlag, aber apt-get bestätigt, dass libsqlite3-dev bereits mit der neuesten Version installiert ist. Ich habe strace bisher noch nicht benutzt. Frühe Untersuchungen zeigen, dass es Linux-Kernel-Aufrufe verfolgt. Die Fehlermeldung sieht jedoch eher nach einem Python- oder Sqlite-Bibliotheksproblem aus. Nach einigen weiteren Neuinstallationen von Python3 und Neuerstellungen von virtuellen Umgebungen kann ich strace versuchen. user96 vor 8 Jahren 0
0
user96

Diese Frage lohnt sich nicht. Nach einigen weiteren Versuchen , die Installation zu reparieren, bestand meine Lösung darin, die Ubuntu-VM durch neue Installationen zu ersetzen, die alles benötigten, um die Anwendung auszuführen. Jetzt funktioniert alles gut.

Es ist witzig, wie wir Tunnelblick entwickeln und im Endeffekt nach einer Antwort suchen anstatt nach einer Lösung.