diff --git a/libgda/sqlite/gda-sqlite-provider.c b/libgda/sqlite/gda-sqlite-provider.c index ebc0f93..58a6d88 100644 --- a/libgda/sqlite/gda-sqlite-provider.c +++ b/libgda/sqlite/gda-sqlite-provider.c @@ -548,6 +548,7 @@ GType gda_sqlite_provider_get_type (void) { static GType type = 0; + int i = 0; if (G_UNLIKELY (type == 0)) { static GStaticMutex registering = G_STATIC_MUTEX_INIT; @@ -574,6 +575,14 @@ gda_sqlite_provider_get_type (void) GModule *module2; module2 = find_sqlite_library ("libsqlite3"); + // fallback to common versionned libsqlite3 + if (!module2) { + // think ahead, we might have to handle much more versions later + const gchar *sonames[] = { "libsqlite3.so.0", NULL }; + for (i = 0; (sonames[i] != NULL) && (module2 == NULL); ++i) { + module2 = find_sqlite_library(sonames[i]); + } + } if (module2) load_symbols (module2); if (s3r)