Skip to content

Need a bit more guidance in updating SQLite version from 3.13 to 3.26 #246

@JohnAtFenestra

Description

@JohnAtFenestra

Running on Ubuntu 16.04.

SQLite is up to 3.26 in version with 3.25 adding a significant number of new features. I've built SQLite from source in the past on Windows based machines using the amalgamation. I have to admit I'm stymied when I look at the ext/sqlite3 contents and don't really know where to begin to update the .so.

The amalgamation, https://www.sqlite.org/download.html, has four files:

shell.c
sqlite3.c
sqlite3.h
sqlite3ext.h

Of these, only sqlite3.c appears in ext/sqlite3 and has a size of 4KB. The amalgamation version of this file is 7.8MB.

The full source for SQLite has 156 files in the src folder alone.

The instructions state:

Install SQLite3, enabling the option SQLITE_ENABLE_COLUMN_METADATA (see www.sqlite.org/compile.html for details).

I'm not at all certain what operating system these instructions for since the installation process for Ubuntu is to either use apt or to download the precompiled binaries.

I attempted to create a new version by making a copy of the source for sqlite-ruby and inserting the new sqlite3.c from the amalgamation, as well as sqlite3.h and sqlite3ext.c. After following the steps:

ruby setup.rb config
ruby setup.rb setup
ruby setup.rb install

I then tested a simple Ruby program and received the following exception:

sqlite3_native.so: undefined symbol: mSqlite3

I reverted by using gem pristine sqlite3

Can someone walk me through this process? I'm unfortunately baffled as to where to begin due to the discrepancies I see between the two source listings.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions