Blob Blame History Raw
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)