You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
**To use the Genomics Extension you might first need to upgrade SQLite itself.** The host program must link [SQLite version 3.31.0 (2020-01-22)](https://www.sqlite.org/releaselog/3_31_0.html) or newer. In your shell, `sqlite3 --version` displays the version installed with your OS, which is probably what your programs use; if in doubt, cause a program to report the result of `SELECT sqlite_version()`.
25
25
26
-
If this is too old, then upgrade SQLite3 using your preferred binary package manager (e.g. apt, yum, conda, brew), if possible. Otherwise, modify your program's linking step or runtime environment to cause it to use an up-to-date version, for example by setting rpath or LD_LIBRARY_PATH to the location of an up-to-date shared library file. Resources:
26
+
If this is too old, then upgrade SQLite3 using your preferred binary package manager (e.g. apt, yum, conda, brew), if possible. Otherwise, modify your program's linking step or runtime environment to cause it to use an up-to-date version, for example by setting rpath or `LD_LIBRARY_PATH` to the location of an up-to-date shared library file. Resources:
27
27
28
28
*[How To Compile SQLite](https://www.sqlite.org/howtocompile.html)
29
29
*[DreamHost Knowledge Base - Installing a custom version of SQLite3](https://help.dreamhost.com/hc/en-us/articles/360028047592-Installing-a-custom-version-of-SQLite3)
* As a last resort for GNU/Linux, our [GitHub Releases](https://github.com/mlin/GenomicSQLite/releases) include a `libsqlite3.so.0` that should be compatible with modern (2016+) hosts.
33
34
34
35
You can always `SELECT sqlite_version()` to verify the upgrade in your program.
35
36
@@ -82,6 +83,13 @@ It's usually easiest to obtain the extension as a pre-compiled shared library (L
82
83
83
84
Recommendation: *also* install the Python package, which includes a useful command-line shell and smoke-test script.
84
85
86
+
GNU/Linux: to link the prebuilt `libgenomicsqlite.so` distributed from our GitHub Releases, you
87
+
may have to compile your source with `CXXFLAGS=-D_GLIBCXX_USE_CXX11_ABI=0`. This is because the
88
+
library is built against an old libstdc++ version to improve runtime compatibility. The
89
+
function of this flag is explained in the libstdc++ docs on
90
+
[Dual ABI](https://gcc.gnu.org/onlinedocs/libstdc++/manual/using_dual_abi.html). If you build
91
+
`libgenomicsqlite.so` from source, then the flag will not be needed.
92
+
85
93
See our [GitHub README](https://github.com/mlin/GenomicSQLite) for the source build procedure, if needed.
86
94
87
95
We welcome community contributions to the available language bindings; see the Language Bindings Guide if interested.
0 commit comments