#### Beyond Linux® From Scratch (System V Edition) - Version 12.3

### Chapter 22. Databases

- Prev

  PostgreSQL-17.4

- Next

  Other Server Software

- Up
- Home

# SQLite-3.49.1

## Introduction to SQLite

The SQLite package is a software library that implements a self-contained, serverless, zero-configuration, transactional SQL database engine.

This package is known to build and work properly using an LFS 12.3 platform.

### Package Information

- Download (HTTP): https://sqlite.org/2025/sqlite-autoconf-3490100.tar.gz

- Download MD5 sum: 8d77d0779bcd9993eaef33431e2e0c30

- Download size: 3.1 MB

- Estimated disk space required: 123 MB (with documentation)

- Estimated build time: 0.3 SBU (Using parallelism=4)

### Additional Downloads

Optional Documentation

- Download (HTTP): https://sqlite.org/2025/sqlite-doc-3490100.zip

- Download MD5 sum: 8d3e207489b544a8687e3faf8db26291

- Download size: 11 MB

### SQLite Dependencies

#### Optional

libarchive-3.7.7 (required to unzip the documentation) and libedit

## Installation of SQLite

If you downloaded the optional documentation, issue the following command to install the documentation into the source tree:

    unzip -q ../sqlite-doc-3490100.zip

Install SQLite by running the following commands:

    ./configure --prefix=/usr     \
                --disable-static  \
                --enable-fts{4,5} \
                CPPFLAGS="-D SQLITE_ENABLE_COLUMN_METADATA=1 \
                          -D SQLITE_ENABLE_UNLOCK_NOTIFY=1   \
                          -D SQLITE_ENABLE_DBSTAT_VTAB=1     \
                          -D SQLITE_SECURE_DELETE=1"         &&
    make

This package does not come with a test suite.

Now, as the `root` user:

    make install

If you downloaded the optional documentation, issue the following commands as the `root` user to install it:

    install -v -m755 -d /usr/share/doc/sqlite-3.49.1 &&
    cp -v -R sqlite-doc-3490100/* /usr/share/doc/sqlite-3.49.1

## Command Explanations

`--disable-static`: This switch prevents installation of static versions of the libraries.

`--enable-fts{4,5}`: These switches enable support for version 3, 4 and 5 of the full text search (FTS) extension. Note that the `--enable-fts4` switch enables support for both FTS version 4 and FTS version 3.

`CPPFLAGS="-D SQLITE_ENABLE_COLUMN_METADATA=1 ...` : Some applications require these options to be turned on. The only way to do this is to include them in the `CFLAGS` or `CPPFLAGS`. We use the latter so the default value (or any value set by the user) of `CFLAGS` won't be affected. For further information on what can be specified see https://www.sqlite.org/compile.html.

## Contents

Installed Program: sqlite3
Installed Library: libsqlite3.so
Installed Directory: /usr/share/doc/sqlite-3.49.1

### Short Descriptions

sqlite3 | is a terminal-based front-end to the SQLite library that can evaluate queries interactively and display the results
`libsqlite3.so` | contains the SQLite API functions

- Prev

  PostgreSQL-17.4

- Next

  Other Server Software

- Up
- Home