OfflineIMAP sagt mir, dass SQLite nicht installiert ist, obwohl es

OfflineIMAP sagt mir, dass SQLite nicht installiert ist, obwohl es

Immer wenn ich OfflineIMAP v6.5.3.1 ausführe, erhalte ich für jeden Ordner (also Tag und Ordner in Gmail) eine Fehlermeldung, die mir mitteilt, dass ein Problem aufgetreten ist. Direkt danach wird mir Folgendes angezeigt:

SQLite backend chosen, but no sqlite python bindings available. Please install.

Dies geschieht für jeden Ordner/jedes Tag, daher ist die Fehlerliste lang.

Was verursacht das? Ich verwende Mac OS X 10.7 und habe sqlitemit installiert. brew install sqliteIch habe auch versucht pip install pysqlite. Natürlich habe ich sowohl Python 2.7 als auch Python 3 installiert ( brew install python python3). Auf Python 2.7 wird also mit zugegriffen pythonund auf Python 3 mit python3. Denken Sie, das ist vielleicht das Problem?

Jede Hilfe ist willkommen. :)

PS: Das ist der einzige Fehler, der angezeigt wird, also scheint meine Konfigurationsdatei in Ordnung zu sein.

BEARBEITEN: Liste der Python-Module:

altgraph (0.7.1)
argparse (1.2.1)
bdist-mpkg (0.4.4)
bonjour-py (0.3)
eventlet (0.13.0)
greenlet (0.4.1)
include-server (3.1-toolwhip.1)
localtunnel (0.6.1)
macholib (1.3)
modulegraph (0.8.1)
numpy (1.5.1)
pip (1.4)
py2app (0.5.3)
pyobjc-core (2.3.2a0)
pyobjc-framework-AddressBook (2.3.2a0)
pyobjc-framework-AppleScriptKit (2.3.2a0)
pyobjc-framework-AppleScriptObjC (2.3.2a0)
pyobjc-framework-Automator (2.3.2a0)
pyobjc-framework-CalendarStore (2.3.2a0)
pyobjc-framework-CFNetwork (2.3.2a0)
pyobjc-framework-Cocoa (2.3.2a0)
pyobjc-framework-Collaboration (2.3.2a0)
pyobjc-framework-CoreData (2.3.2a0)
pyobjc-framework-CoreLocation (2.3.2a0)
pyobjc-framework-CoreText (2.3.2a0)
pyobjc-framework-DictionaryServices (2.3.2a0)
pyobjc-framework-ExceptionHandling (2.3.2a0)
pyobjc-framework-FSEvents (2.3.2a0)
pyobjc-framework-InputMethodKit (2.3.2a0)
pyobjc-framework-InstallerPlugins (2.3.2a0)
pyobjc-framework-InstantMessage (2.3.2a0)
pyobjc-framework-InterfaceBuilderKit (2.3.2a0)
pyobjc-framework-LatentSemanticMapping (2.3.2a0)
pyobjc-framework-LaunchServices (2.3.2a0)
pyobjc-framework-Message (2.3.2a0)
pyobjc-framework-OpenDirectory (2.3.2a0)
pyobjc-framework-PreferencePanes (2.3.2a0)
pyobjc-framework-PubSub (2.3.2a0)
pyobjc-framework-QTKit (2.3.2a0)
pyobjc-framework-Quartz (2.3.2a0)
pyobjc-framework-ScreenSaver (2.3.2a0)
pyobjc-framework-ScriptingBridge (2.3.2a0)
pyobjc-framework-SearchKit (2.3.2a0)
pyobjc-framework-ServerNotification (2.3.2a0)
pyobjc-framework-ServiceManagement (2.3.2a0)
pyobjc-framework-SyncServices (2.3.2a0)
pyobjc-framework-SystemConfiguration (2.3.2a0)
pyobjc-framework-WebKit (2.3.2a0)
pyobjc-framework-XgridFoundation (2.3.2a0)
pyOpenSSL (0.12)
PyRSS2Gen (1.0.0)
pysqlite (2.6.3)
python-dateutil (1.5)
requests (1.2.3)
Warning: cannot find svn location for setuptools==0.6c12dev-r85381
setuptools (0.6c12dev-r85381)
Twisted (11.0.0)
vboxapi (1.0)
wsgiref (0.1.2)
xattr (0.6.1)
zope.interface (3.5.1)

Antwort1

Wenn Sie einen Blick auf dieOfflineIMAP-SoftwareEs gibt eine Datei namens LocalStatusSQLiteFolder.py. In dieser Datei befindet sich eine Klassendefinition: LocalStatusSQLiteFolder, mit der folgenden Methode __init__:

def __init__(self, name, repository):
        super(LocalStatusSQLiteFolder, self).__init__(name, repository)       
        # dblock protects against concurrent writes in same connection
        self._dblock = Lock()
        #Try to establish connection, no need for threadsafety in __init__
        try:
            self.connection = sqlite.connect(self.filename, check_same_thread = False)
        except NameError:
            # sqlite import had failed
            raise UserWarning('SQLite backend chosen, but no sqlite python '
                              'bindings available. Please install.')

Dies ist der Grund für die Ausnahmemeldung, die Sie sehen.

Lösung?

Beim Durchsuchen der OfflineIMAP-Website bin ich auf diese Seite mit dem Titel gestoßen:OfflineIMAP Handbuch. Insbesondere in diesem Abschnitt:Synchronisierungsleistung, das Modul python-sqlitewird als erforderlich erwähnt. Es gibt auch eine Anleitung zum Einrichten dieser Funktion. Ich würde mir das Material durchlesen und sicherstellen, dass Sie die dort beschriebenen Schritte ausführen.

verwandte Informationen