1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224
|
<!DOCTYPE html>
<html><head>
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link href="sqlite.css" rel="stylesheet">
<title>SQLite Download Page</title>
<!-- path= -->
</head>
<body>
<div class=nosearch>
<a href="index.html">
<img class="logo" src="images/sqlite370_banner.gif" alt="SQLite" border="0">
</a>
<div><!-- IE hack to prevent disappearing logo --></div>
<div class="tagline desktoponly">
Small. Fast. Reliable.<br>Choose any three.
</div>
<div class="menu mainmenu">
<ul>
<li><a href="index.html">Home</a>
<li class='mobileonly'><a href="javascript:void(0)" onclick='toggle_div("submenu")'>Menu</a>
<li class='wideonly'><a href='about.html'>About</a>
<li class='desktoponly'><a href="docs.html">Documentation</a>
<li class='desktoponly'><a href="download.html">Download</a>
<li class='wideonly'><a href='copyright.html'>License</a>
<li class='desktoponly'><a href="support.html">Support</a>
<li class='desktoponly'><a href="prosupport.html">Purchase</a>
<li class='search' id='search_menubutton'>
<a href="javascript:void(0)" onclick='toggle_search()'>Search</a>
</ul>
</div>
<div class="menu submenu" id="submenu">
<ul>
<li><a href='about.html'>About</a>
<li><a href='docs.html'>Documentation</a>
<li><a href='download.html'>Download</a>
<li><a href='support.html'>Support</a>
<li><a href='prosupport.html'>Purchase</a>
</ul>
</div>
<div class="searchmenu" id="searchmenu">
<form method="GET" action="search">
<select name="s" id="searchtype">
<option value="d">Search Documentation</option>
<option value="c">Search Changelog</option>
</select>
<input type="text" name="q" id="searchbox" value="">
<input type="submit" value="Go">
</form>
</div>
</div>
<script>
function toggle_div(nm) {
var w = document.getElementById(nm);
if( w.style.display=="block" ){
w.style.display = "none";
}else{
w.style.display = "block";
}
}
function toggle_search() {
var w = document.getElementById("searchmenu");
if( w.style.display=="block" ){
w.style.display = "none";
} else {
w.style.display = "block";
setTimeout(function(){
document.getElementById("searchbox").focus()
}, 30);
}
}
function div_off(nm){document.getElementById(nm).style.display="none";}
window.onbeforeunload = function(e){div_off("submenu");}
/* Disable the Search feature if we are not operating from CGI, since */
/* Search is accomplished using CGI and will not work without it. */
if( !location.origin || !location.origin.match || !location.origin.match(/http/) ){
document.getElementById("search_menubutton").style.display = "none";
}
/* Used by the Hide/Show button beside syntax diagrams, to toggle the */
function hideorshow(btn,obj){
var x = document.getElementById(obj);
var b = document.getElementById(btn);
if( x.style.display!='none' ){
x.style.display = 'none';
b.innerHTML='show';
}else{
x.style.display = '';
b.innerHTML='hide';
}
return false;
}
var antiRobot = 0;
function antiRobotGo(){
if( antiRobot!=3 ) return;
antiRobot = 7;
var j = document.getElementById("mtimelink");
if(j && j.hasAttribute("data-href")) j.href=j.getAttribute("data-href");
}
function antiRobotDefense(){
document.body.onmousedown=function(){
antiRobot |= 2;
antiRobotGo();
document.body.onmousedown=null;
}
document.body.onmousemove=function(){
antiRobot |= 2;
antiRobotGo();
document.body.onmousemove=null;
}
setTimeout(function(){
antiRobot |= 1;
antiRobotGo();
}, 100)
antiRobotGo();
}
antiRobotDefense();
</script>
<h2>SQLite Download Page</h2>
<table width="100%" cellpadding="5" cellspacing="0">
</table>
<hr>
<!-- Download product data for scripts to read
PRODUCT,VERSION,RELATIVE-URL,SIZE-IN-BYTES,SHA3-HASH
-->
<a name="encoding"></a>
<h3>Build Product Names and Info</h3>
<p>
Build products are named using one of the following templates:
<ol>
<li> <b>sqlite-</b>product<b>-</b>version<b>.zip</b>
<li> <b>sqlite-</b>product<b>-</b>version<b>.tar.gz</b>
<li> <b>sqlite-</b>product<b>-</b>os<b>-</b>cpu<b>-</b>version<b>.zip</b>
<li> <b>sqlite-</b>product<b>-</b>date<b>.zip</b>
</ol>
<p>Templates (1) and (2) are used for source-code products. Template (1) is
used for generic source-code products and templates (2) is used for source-code
products that are generally only useful on unix-like platforms. Template (3)
is used for precompiled binaries products. Template (4) is used for
unofficial pre-release "snapshots" of source code.
<p>The <i>version</i> is encoded so that filenames sort in order of
increasing version number when viewed using "ls". For version 3.X.Y the
filename encoding is 3XXYY00. For branch version 3.X.Y.Z, the encoding is
3XXYYZZ.
<p>The <i>date</i> in template (4) is of the form: YYYYMMDDHHMM
<p>For convenient, script-driven extraction of the downloadable
file URLs and associated information, an HTML comment is embedded
in this page's source. Its first line (sans leading tag) reads:
<blockquote><b>Download product data for scripts to read</b></blockquote>
Its subsequent lines comprise a CSV table with this column header:
<blockquote><b>PRODUCT,VERSION,RELATIVE-URL,SIZE-IN-BYTES,SHA3-HASH</b></blockquote>
The column header and following data lines have no leading space.
The PRODUCT column is a constant value ("PRODUCT") for convenient
regular expression matching. Other columns are self-explanatory.
This format will remain stable except for possible new columns
appended to the right of older columns.
<a name="cvs"></a>
<a name="fossil"></a>
<a name="srctree"></a>
<h3>Source Code Repositories</h3>
<p>
The SQLite source code is maintained in three geographically-dispersed
self-synchronizing
<a href="https://www.fossil-scm.org/">Fossil</a> repositories that are
available for anonymous read-only access. Anyone can
view the repository contents and download historical versions
of individual files or ZIP archives of historical check-ins.
You can also <a href="getthecode.html#clone">clone the entire repository</a>.</p>
<p>See the <a href="howtocompile.html">How To Compile SQLite</a> page for additional information
on how to use the raw SQLite source code.
Note that a recent version of <a href="https://www.tcl-lang.org/">Tcl</a>
is required in order to build from the repository sources.
The <a href="amalgamation.html">amalgamation</a> source code files
(the "sqlite3.c" and "sqlite3.h" files) build products and are
not contained in raw source code tree.</p>
<blockquote>
<a href="https://www.sqlite.org/cgi/src">https://www.sqlite.org/cgi/src</a> (Dallas)<br>
<a href="https://www2.sqlite.org/cgi/src">https://www2.sqlite.org/cgi/src</a> (Newark)<br>
<a href="https://www3.sqlite.org/cgi/src">https://www3.sqlite.org/cgi/src</a> (San Francisco)<br>
</blockquote>
<p>There is a GitHub mirror at
<blockquote>
<a href="https://github.com/sqlite/sqlite">https://github.com/sqlite/sqlite/</a>
</blockquote>
<p>The documentation is maintained in separate
<a href="https://www.fossil-scm.org/">Fossil</a> repositories located
at:</p>
<blockquote>
<a href="https://www.sqlite.org/cgi/docsrc">https://www.sqlite.org/cgi/docsrc</a> (Dallas)<br>
<a href="https://www2.sqlite.org/cgi/docsrc">https://www2.sqlite.org/cgi/docsrc</a> (Newark)<br>
<a href="https://www3.sqlite.org/cgi/docsrc">https://www3.sqlite.org/cgi/docsrc</a> (San Francisco)<br>
</blockquote>
<script type='text/JavaScript'>
/* <![CDATA[ */
setTimeout(function(){
function d391(a,b){document.getElementById(a).href=b;};
}, 10);
/* ]]> */
</script>
|