OLD | NEW |
(Empty) | |
| 1 This package contains: |
| 2 |
| 3 * the SQLite library amalgamation source code file: sqlite3.c |
| 4 * the sqlite3.h and sqlite3ext.h header files that define the C-language |
| 5 interface to the sqlite3.c library file |
| 6 * the shell.c file used to build the sqlite3 command-line shell program |
| 7 * autoconf/automake installation infrastucture for building on POSIX |
| 8 compliant systems |
| 9 * a Makefile.msc, sqlite3.rc, and Replace.cs for building with Microsoft |
| 10 Visual C++ on Windows |
| 11 |
| 12 SUMMARY OF HOW TO BUILD |
| 13 ======================= |
| 14 |
| 15 Unix: ./configure; make |
| 16 Windows: nmake /f Makefile.msc |
| 17 |
| 18 BUILDING ON POSIX |
| 19 ================= |
| 20 |
| 21 The generic installation instructions for autoconf/automake are found |
| 22 in the INSTALL file. |
| 23 |
| 24 The following SQLite specific boolean options are supported: |
| 25 |
| 26 --enable-readline use readline in shell tool [default=yes] |
| 27 --enable-threadsafe build a thread-safe library [default=yes] |
| 28 --enable-dynamic-extensions support loadable extensions [default=yes] |
| 29 |
| 30 The default value for the CFLAGS variable (options passed to the C |
| 31 compiler) includes debugging symbols in the build, resulting in larger |
| 32 binaries than are necessary. Override it on the configure command |
| 33 line like this: |
| 34 |
| 35 $ CFLAGS="-Os" ./configure |
| 36 |
| 37 to produce a smaller installation footprint. |
| 38 |
| 39 Other SQLite compilation parameters can also be set using CFLAGS. For |
| 40 example: |
| 41 |
| 42 $ CFLAGS="-Os -DSQLITE_THREADSAFE=0" ./configure |
| 43 |
| 44 |
| 45 BUILDING WITH MICROSOFT VISUAL C++ |
| 46 ================================== |
| 47 |
| 48 To compile for Windows using Microsoft Visual C++: |
| 49 |
| 50 $ nmake /f Makefile.msc |
| 51 |
| 52 Using Microsoft Visual C++ 2005 (or later) is recommended. Several Windows |
| 53 platform variants may be built by adding additional macros to the NMAKE |
| 54 command line. |
| 55 |
| 56 Building for WinRT 8.0 |
| 57 ---------------------- |
| 58 |
| 59 FOR_WINRT=1 |
| 60 |
| 61 Using Microsoft Visual C++ 2012 (or later) is required. When using the |
| 62 above, something like the following macro will need to be added to the |
| 63 NMAKE command line as well: |
| 64 |
| 65 "NSDKLIBPATH=%WindowsSdkDir%\..\8.0\lib\win8\um\x86" |
| 66 |
| 67 Building for WinRT 8.1 |
| 68 ---------------------- |
| 69 |
| 70 FOR_WINRT=1 |
| 71 |
| 72 Using Microsoft Visual C++ 2013 (or later) is required. When using the |
| 73 above, something like the following macro will need to be added to the |
| 74 NMAKE command line as well: |
| 75 |
| 76 "NSDKLIBPATH=%WindowsSdkDir%\..\8.1\lib\winv6.3\um\x86" |
| 77 |
| 78 Building for UWP 10.0 |
| 79 --------------------- |
| 80 |
| 81 FOR_WINRT=1 FOR_UWP=1 |
| 82 |
| 83 Using Microsoft Visual C++ 2015 (or later) is required. When using the |
| 84 above, something like the following macros will need to be added to the |
| 85 NMAKE command line as well: |
| 86 |
| 87 "NSDKLIBPATH=%WindowsSdkDir%\..\10\lib\10.0.10586.0\um\x86" |
| 88 "PSDKLIBPATH=%WindowsSdkDir%\..\10\lib\10.0.10586.0\um\x86" |
| 89 "NUCRTLIBPATH=%UniversalCRTSdkDir%\..\10\lib\10.0.10586.0\ucrt\x86" |
| 90 |
| 91 Building for the Windows 10 SDK |
| 92 ------------------------------- |
| 93 |
| 94 FOR_WIN10=1 |
| 95 |
| 96 Using Microsoft Visual C++ 2015 (or later) is required. When using the |
| 97 above, no other macros should be needed on the NMAKE command line. |
| 98 |
| 99 Other preprocessor defines |
| 100 -------------------------- |
| 101 |
| 102 Additionally, preprocessor defines may be specified by using the OPTS macro |
| 103 on the NMAKE command line. However, not all possible preprocessor defines |
| 104 may be specified in this manner as some require the amalgamation to be built |
| 105 with them enabled (see http://www.sqlite.org/compile.html). For example, the |
| 106 following will work: |
| 107 |
| 108 "OPTS=-DSQLITE_ENABLE_STAT4=1 -DSQLITE_ENABLE_JSON1=1" |
| 109 |
| 110 However, the following will not compile unless the amalgamation was built |
| 111 with it enabled: |
| 112 |
| 113 "OPTS=-DSQLITE_ENABLE_UPDATE_DELETE_LIMIT=1" |
OLD | NEW |