-
Notifications
You must be signed in to change notification settings - Fork 208
Description
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.