]> git.ipfire.org Git - thirdparty/sqlite.git/commitdiff
Update build instructions for Windows to explain how to link against
authordrh <>
Thu, 11 Dec 2025 18:16:39 +0000 (18:16 +0000)
committerdrh <>
Thu, 11 Dec 2025 18:16:39 +0000 (18:16 +0000)
ZLIB.

FossilOrigin-Name: e785a80e4100c368dca8d73cb662cff4d0fd76734fa0f3fa9b5754a380f7c746

doc/compile-for-windows.md
manifest
manifest.uuid

index 0e59c83fed0f089f67da70998ffeec373f60d041..30536d5fd8340c2949fee554ec39de1272930c9c 100644 (file)
@@ -180,3 +180,39 @@ statically linked so that it does not depend on separate DLL:
   6.  After your executable is built, you can verify that it does not
       depend on the TCL DLL by running:
       <blockquote><pre>dumpbin /dependents sqlite3_analyzer.exe</pre></blockquote>
+
+## Linking Against ZLIB
+
+Some feature (such as zip-file support in the CLI) require the ZLIB
+compression library.  That library is more or less universally available
+on unix platforms, but is seldom provided on Windows.  You will probably
+need to provide it yourself.  Here the the steps needed:
+
+  1.  Download the zlib-1.3.1.tar.gz tarball (or a similar version).
+      Unpack the tarball sources.  You can put them wherever you like.
+      For the purposes of this document, let's assume you put the source
+      tree in c:\\zlib-64.  Note:  If you are building for both x64 and
+      x86, you will need separate builds of ZLIB for each, thus separate
+      build directories.
+
+  2.  Before building SQLite (as described above) first make these
+      environment changes.  The lead-programmer for SQLite (who writes
+      these words) has BAT files named "env-x64.bat" and "env-x32.bat"
+      and "env-arm64.bat" that make these changes, and he runs those
+      BAT file whenever he starts a new shell.  These are the settings
+      needed:
+      <blockquote>
+         set USE_ZLIB=1<br>
+         set BUILD_ZLIB=0<br>
+         set ZLIBDIR=c:\\zlib-64
+      </blockquote>
+
+  3.  Because the settings in step 2 specify "BUILD_ZLIB=0", you will need
+      to build the library at least once.  I recommand:
+      <blockquote>
+         make clean sqlite3.exe BUILD_ZLIB=1
+      </blockquote>
+
+  4.  After making the environment changes specified in steps 1 through 3
+      above, you then build and test SQLite as you normally would.  The
+      environment variable changes will cause ZLIB to be linked automatically.
index 8219fcbde4120a48740855de7a5d07fcff8a3f79..547a61abc2baf609a4fc098f1e90fb30fb8210c1 100644 (file)
--- a/manifest
+++ b/manifest
@@ -1,5 +1,5 @@
-C Adjust\sthe\sMSVC\sMakefile\sso\sthat\swhen\sit\sinvokes\sthe\szlib\smakefile,\sit\nchanges\sCFLAGS\sto\suse\sthe\scorrect\s-M\scompiler\soption\sto\smatch\sSQLite.
-D 2025-12-11T17:49:17.143
+C Update\sbuild\sinstructions\sfor\sWindows\sto\sexplain\show\sto\slink\sagainst\nZLIB.
+D 2025-12-11T18:16:39.432
 F .fossil-settings/binary-glob 61195414528fb3ea9693577e1980230d78a1f8b0a54c78cf1b9b24d0a409ed6a x
 F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
 F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
@@ -57,7 +57,7 @@ F configure 9a00b21dfd13757bbfb8d89b30660a89ec1f8f3a79402b8f9f9b6fc475c3303a x
 F contrib/sqlitecon.tcl eb4c6578e08dd353263958da0dc620f8400b869a50d06e271ab0be85a51a08d3
 F doc/F2FS.txt c1d4a0ae9711cfe0e1d8b019d154f1c29e0d3abfe820787ba1e9ed7691160fcd
 F doc/compile-for-unix.md c9dce1ddd4bf0d25efccc5c63eb047e78c01ce06a6ff29c73e0a8af4a0f4adbc
-F doc/compile-for-windows.md f9e74d74da88f384edd5809f825035e071608f00f7f39c0e448df7b3982f979c
+F doc/compile-for-windows.md 36601c95fa4070eebfe757684271d17a7c4a586912ba706d0b5e7817e1df54ad
 F doc/json-enhancements.md e356fc834781f1f1aa22ee300027a270b2c960122468499bf347bb123ce1ea4f
 F doc/jsonb.md acd77fc3a709f51242655ad7803510c886aa8304202fa9cf2abc5f5c4e9d7ae5
 F doc/lemon.html 2085fda0a90a94fe92159a79dccc5c30d5a2313524887a31659cd66162f17233
@@ -2184,8 +2184,8 @@ F tool/version-info.c 33d0390ef484b3b1cb685d59362be891ea162123cea181cb8e6d2cf6dd
 F tool/warnings-clang.sh bbf6a1e685e534c92ec2bfba5b1745f34fb6f0bc2a362850723a9ee87c1b31a7
 F tool/warnings.sh d924598cf2f55a4ecbc2aeb055c10bd5f48114793e7ba25f9585435da29e7e98
 F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 117f4093f08e0abbde2041f70898220e237e250664f6ede6d4eb2a8a44050466
-R c998c3d860ebe4cf53a525410c0f4746
+P ba003c7c74fb4dd665a8ec6dea7d030f1e7e9cbb13e60bb728860ebffdff5aaf
+R 1c99cad3fd8583fa54bc224ab3f05c00
 U drh
-Z abb40a60815ce668f787767a2f5f6cee
+Z c4c875edc56563f1723c026f14c53914
 # Remove this line to create a well-formed Fossil manifest.
index 1f28077ef7658e7cbad8a7d797ac5e200e0971e9..427688d1c0e4dcd7b5c4b0cdf03f52ff44b03377 100644 (file)
@@ -1 +1 @@
-ba003c7c74fb4dd665a8ec6dea7d030f1e7e9cbb13e60bb728860ebffdff5aaf
+e785a80e4100c368dca8d73cb662cff4d0fd76734fa0f3fa9b5754a380f7c746