SQLite Forum

How to compile the libsqlitejdbc.so?
Login

How to compile the libsqlitejdbc.so?

(1) By anonymous on 2021-04-21 03:20:02 [link]

Hello,

Recently I used SQLite in Java, so I download the [sqlite-jdbc](https://github.com/xerial/sqlite-jdbc).

In this project, there is the following paragraph:

> Since sqlite-jdbc-3.6.19, the natively compiled SQLite engines will be used for the following operating systems:

>  * Windows XP, Vista  (Windows, x86 architecture, x86_64)

>  * Mac OS X 10.4 (Tiger), 10.5(Leopard), 10.6 SnowLeopard (for i386, x86_64, Intel CPU machines)

>  * Linux i386 (Intel), amd64 (64-bit X86 Intel processor) 

This means that the native SQLite they are using is compiled from the official version, something like:

> libsqlitejdbc.so  sqlitejdbc.dll

I want to know how did they compile the source code so that I can modify some SQLite source code and apply it to sqlite-jdbc according to my need.

(2) By Larry Brasfield (larrybr) on 2021-04-21 03:37:41 in reply to 1

The sqlite-jdbc project page, which your link reaches, lists among its top-level files a "README_BUILD.md", whose link reaches <u>[How to compile a new version of SQLiteJDBC](https://github.com/xerial/sqlite-jdbc/blob/master/README_BUILD.md)</u>. That is where the answer to your question lies. This forum is about the SQLite library itself, its CLI shell, and how it works -- not about how it might be built into the multitude of applications, adapters, languages, and libraries that happen to use SQLite.

The nitty-gritty of "how did they compile the source code" is in a file listed on the project page named "Makefile". You can follow the build instructions with a -n flag added to the make invocation to get make to say what it would do instead of doing it.