mirror of
https://github.com/tursodatabase/libsql.git
synced 2025-06-18 23:39:07 +00:00
.cargo
.github
bindings
bottomless
bottomless-cli
docker-compose
docs
ext
libsql
libsql-ffi
libsql-replication
libsql-server
libsql-shell
libsql-sqlite3
art
autoconf
tea
INSTALL
Makefile.am
Makefile.fallback
Makefile.msc
README.first
README.txt
configure.ac
contrib
crates
doc
ext
mptest
src
test
tool
vsixtest
.gitignore
Dockerfile-wasm-udf
LIBSQL_VERSION
LICENSE.md
Makefile.in
Makefile.linux-gcc
Makefile.msc
README-SQLite.md
VERSION
aclocal.m4
config.guess
config.sub
configure
configure.ac
install-sh
libsql.pc.in
ltmain.sh
magic.txt
main.mk
manifest
manifest.uuid
spec.template
sqlite.pc.in
sqlite3.1
sqlite3.pc.in
sqlite_cfg.h.in
libsql-sys
libsql-sys-tmp
vendored
xtask
.dockerignore
.env
.gitignore
CODE_OF_CONDUCT.md
Cargo.lock
Cargo.toml
Dockerfile
Dockerfile.dev
LICENSE.md
README-libsql.md
README.md
docker-entrypoint.sh
fly.toml
rust-toolchain.toml
114 lines
3.5 KiB
Plaintext
114 lines
3.5 KiB
Plaintext
This package contains:
|
|
|
|
* the SQLite library amalgamation source code file: sqlite3.c
|
|
* the sqlite3.h and sqlite3ext.h header files that define the C-language
|
|
interface to the sqlite3.c library file
|
|
* the shell.c file used to build the sqlite3 command-line shell program
|
|
* autoconf/automake installation infrastucture for building on POSIX
|
|
compliant systems
|
|
* a Makefile.msc, sqlite3.rc, and Replace.cs for building with Microsoft
|
|
Visual C++ on Windows
|
|
|
|
SUMMARY OF HOW TO BUILD
|
|
=======================
|
|
|
|
Unix: ./configure; make
|
|
Windows: nmake /f Makefile.msc
|
|
|
|
BUILDING ON POSIX
|
|
=================
|
|
|
|
The generic installation instructions for autoconf/automake are found
|
|
in the INSTALL file.
|
|
|
|
The following SQLite specific boolean options are supported:
|
|
|
|
--enable-readline use readline in shell tool [default=yes]
|
|
--enable-threadsafe build a thread-safe library [default=yes]
|
|
--enable-dynamic-extensions support loadable extensions [default=yes]
|
|
|
|
The default value for the CFLAGS variable (options passed to the C
|
|
compiler) includes debugging symbols in the build, resulting in larger
|
|
binaries than are necessary. Override it on the configure command
|
|
line like this:
|
|
|
|
$ CFLAGS="-Os" ./configure
|
|
|
|
to produce a smaller installation footprint.
|
|
|
|
Other SQLite compilation parameters can also be set using CFLAGS. For
|
|
example:
|
|
|
|
$ CFLAGS="-Os -DSQLITE_THREADSAFE=0" ./configure
|
|
|
|
|
|
BUILDING WITH MICROSOFT VISUAL C++
|
|
==================================
|
|
|
|
To compile for Windows using Microsoft Visual C++:
|
|
|
|
$ nmake /f Makefile.msc
|
|
|
|
Using Microsoft Visual C++ 2005 (or later) is recommended. Several Windows
|
|
platform variants may be built by adding additional macros to the NMAKE
|
|
command line.
|
|
|
|
Building for WinRT 8.0
|
|
----------------------
|
|
|
|
FOR_WINRT=1
|
|
|
|
Using Microsoft Visual C++ 2012 (or later) is required. When using the
|
|
above, something like the following macro will need to be added to the
|
|
NMAKE command line as well:
|
|
|
|
"NSDKLIBPATH=%WindowsSdkDir%\..\8.0\lib\win8\um\x86"
|
|
|
|
Building for WinRT 8.1
|
|
----------------------
|
|
|
|
FOR_WINRT=1
|
|
|
|
Using Microsoft Visual C++ 2013 (or later) is required. When using the
|
|
above, something like the following macro will need to be added to the
|
|
NMAKE command line as well:
|
|
|
|
"NSDKLIBPATH=%WindowsSdkDir%\..\8.1\lib\winv6.3\um\x86"
|
|
|
|
Building for UWP 10.0
|
|
---------------------
|
|
|
|
FOR_WINRT=1 FOR_UWP=1
|
|
|
|
Using Microsoft Visual C++ 2015 (or later) is required. When using the
|
|
above, something like the following macros will need to be added to the
|
|
NMAKE command line as well:
|
|
|
|
"NSDKLIBPATH=%WindowsSdkDir%\..\10\lib\10.0.10586.0\um\x86"
|
|
"PSDKLIBPATH=%WindowsSdkDir%\..\10\lib\10.0.10586.0\um\x86"
|
|
"NUCRTLIBPATH=%UniversalCRTSdkDir%\..\10\lib\10.0.10586.0\ucrt\x86"
|
|
|
|
Building for the Windows 10 SDK
|
|
-------------------------------
|
|
|
|
FOR_WIN10=1
|
|
|
|
Using Microsoft Visual C++ 2015 (or later) is required. When using the
|
|
above, no other macros should be needed on the NMAKE command line.
|
|
|
|
Other preprocessor defines
|
|
--------------------------
|
|
|
|
Additionally, preprocessor defines may be specified by using the OPTS macro
|
|
on the NMAKE command line. However, not all possible preprocessor defines
|
|
may be specified in this manner as some require the amalgamation to be built
|
|
with them enabled (see http://www.sqlite.org/compile.html). For example, the
|
|
following will work:
|
|
|
|
"OPTS=-DSQLITE_ENABLE_STAT4=1 -DSQLITE_OMIT_JSON=1"
|
|
|
|
However, the following will not compile unless the amalgamation was built
|
|
with it enabled:
|
|
|
|
"OPTS=-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1"
|