sqlite - Self-contained, embeddable, zero-configuration SQL database engine library ChangeLog

HOWTO


# SQLite 3.43.2 (3430200; released 2023-10-10)
# =============
# Slackware 14.0: sqlite 3.7.13
# Slackware 14.1: sqlite 3.7.17
# Slackware 14.2: sqlite 3.13.0
# Slackware 15.0: sqlite 3.37.2

# Prerequisites:
# Tcl (for the Tcl extension; see ./tea/)
# ncurses
# readline
# zlib
# pkg-config

# We use the autoconf amalgamation tarball here, but there are other
# options.  See the downloads page for other options.

# I use the /usr prefix here to match the Slackware package

# 3.43.2 release notes
# SQLite GitHub mirror
# SQLite Documentation

# Get the tarball
cd
test -f installed/sqlite-autoconf-3430200.tar.gz &&
mv installed/sqlite-autoconf-3430200.tar.gz .
test ! -f sqlite-autoconf-3430200.tar.gz &&
wget https://sqlite.org/2023/sqlite-autoconf-3430200.tar.gz

# These two commands below should output the same checksum.
# If you do not have OpenSSL, or one with the sha3-256 command, you can
# also use the Perl Digest::SHA3 module, or get a sha3sum here:
# https://github.com/maandree/sha3sum
#
# Verify tarball w/ openssl:
openssl sha3-256 sqlite-autoconf-3430200.tar.gz | awk -F'= ' '{ print $2 }'
echo "a7463a45ed58849200858e514b79f7e5f5d69850047897c5b659a78a0bc75cc1"

# Extract the source
mkdir -p -m 0700 ~/src
cd ~/src
find -maxdepth 1 -type d -name "sqlite-*" -exec rm -r {} \;
tar xzvf ~/sqlite-autoconf-3430200.tar.gz
cd sqlite-autoconf-3430200
test $UID = 0 && chown -R root:root .

# Read ./README.txt and ./INSTALL (generic autoconf)

# Create a build directory
mkdir bld
cd bld

# Configure the build for 64-bit
test $(uname -m) = 'x86_64' &&
../configure --prefix=/usr --libdir=/usr/lib64 --mandir=/usr/man

# Configure the build for anything else
test $(uname -m) != 'x86_64' &&
../configure --prefix=/usr --mandir=/usr/man

# Build it
make

# Become root to install it
su

# Remove the Slackware package, if there is one
test -x /sbin/removepkg && /sbin/removepkg sqlite

# If you're _sure_ there's not in use (at least check with lsof), zap old
# library files in case of issues
rm -f /usr/lib*/libsqlite3.* /usr/local/lib*/libsqlite3.*

# Install it
make install
ldconfig

# Make sure your non-root user can remove the source later
chown -R $(logname) .
chmod -R u+w .

# Become yourself again
exit

# Save the source for later
# Be careul here if you have other sqlite-* tarballs (e.g. sqlite-doc)
cd
mkdir -p -m 0700 installed
rm -f installed/sqlite-*.tar.*
mv sqlite-autoconf-3430200.tar.gz installed/


# If you ever want to uninstall SQLite, this should do it:
su
for pfx in /usr /usr/local; do
  rm -f ${pfx}/bin/sqlite3 ${pfx}/include/sqlite3.h \
   ${pfx}/include/sqlite3ext.h ${pfx}/lib/libsqlite3.* \
   ${pfx}/lib/pkgconfig/sqlite3.pc
done
ldconfig
find /usr/lib/tcl* -type d -name sqlite3 -exec rm -r {} \;
test -d /usr/lib64 &&
find /usr/lib64/tcl* -type d -name sqlite3 -exec rm -r {} \;
exit
find ~/src -maxdepth 1 -type d -name "sqlite-*" -exec rm -r {} \;
rm -f ~/installed/sqlite-*.tar.*

List of HOWTOs

Web page itself last updated: 2023-12-20 8:06pm (EST -0500)
HOWTO last updated: 2023-10-16 1:04pm
Copyright © 2001-2024 Jason Englander. All Rights reserved.
[HTML5]