Small. Fast. Reliable.
Choose any three.

This information is obsolete. You are looking at the CVSTrac source management system display for SQLite that was replaced by Fossil on 2009-08-11. The information shown here has not been updated since that cut-over. These pages are retained for historical reference only.

The readline library is a library that command-line applications use to allow users to edit their commands as they type them. More information about readline is available at it's web site The GNU Readline Library.

- Scott

The sqlite command-line utility (sensibly) links against readline if it is present. Readline is licensed under the GPL.

Folk who wish to distribute their version of the sqlite utility under a license other than GPL may want to consider using the BSD libedit and read the thread around Jim Blandy's comments where the guile (lisp library) folk deal with a similar issue.


SQLite with readline already enabled

SQLite is available from Fink for OSX with readline already installed. Presently version 2.8.5.

readline-enabled SQLite on Mac OS X

To include readline support on Mac OS X, do the following --

In latest version of readline source (4.3 when I did this), edit support/shobj-conf: Inside the darwin*|macosx* configuration... Replace: SHLIB_LIBS='-lSystem' With: SHLIB_LIBS='-lSystem -lcurses -lgcc'

  > ./configure
  > make
  > sudo make install

readline headers will get installed most likely under /usr/local/include

Then, in the SQLite source

  > ./configure

Edit the Makefile:

  # Compiler options needed for programs that use the readline() library.
  READLINE_FLAGS = -DHAVE_READLINE=1 -I/usr/local/include/readline

  # The library that programs using readline() must link against.
  LIBREADLINE = -lreadline


  > make
  > sudo make install

You now have a happy, readline capable SQLite. (thanks to eno and instructions on the web)

-- pkishor

Readline 5.0

Readline 5.0 has been released and appearently, it supports Mac OS X 10.3 out of the tarball. Just unpack, .configure, and make.

-- Jeff Flowers