Hi,

Is it possible to get the library size down to 180 KB on Windows using
Visual C++?  I've also tried compiling for the a *nix based platform
with gcc getting similar results as I have had for Windows.  Namely,
the smallest file size I can seem to get is ~300KB+.

I've compiled for smaller code size and with all OMIT options that can be used.

nmake "OPTS=-DSQLITE_OMIT_ALTERTABLE -DSQLITE_OMIT_ANALYZE
-DSQLITE_OMIT_ATTACH -DSQLITE_OMIT_AUTHORIZATION
-DSQLITE_OMIT_AUTOINCREMENT -DSQLITE_OMIT_AUTOINIT
-DSQLITE_OMIT_AUTOMATIC_INDEX -DSQLITE_OMIT_AUTORESET
-DSQLITE_OMIT_AUTOVACUUM -DSQLITE_OMIT_CAST
-DSQLITE_OMIT_BETWEEN_OPTIMIZATION -DSQLITE_OMIT_BLOB_LITERAL
-DSQLITE_OMIT_BUILTIN_TEST -DSQLITE_OMIT_BTREE_COUNT
-DSQLITE_OMIT_CHECK -DSQLITE_OMIT_COMPILEOPTION_DIAGS
-DSQLITE_OMIT_COMPOUND_SELECT -DSQLITE_OMIT_DATETIME_FUNCS
-DSQLITE_OMIT_DECLTYPE -DSQLITE_OMIT_EXPLAIN
-DSQLITE_OMIT_FLAG_PRAGMAS -DSQLITE_OMIT_FLOATING_POINT
-DSQLITE_OMIT_FOREIGN_KEY -DSQLITE_OMIT_INCRBLOB
-DSQLITE_OMIT_INTEGRITY_CHECK -DSQLITE_OMIT_LIKE_OPTIMIZATION
-DSQLITE_OMIT_LOAD_EXTENSION -DSQLITE_OMIT_LOCALTIME
-DSQLITE_OMIT_LOOKASIDE -DSQLITE_OMIT_MEMORYDB
-DSQLITE_OMIT_OR_OPTIMIZATION -DSQLITE_OMIT_PAGER_PRAGMAS
-DSQLITE_OMIT_PRAGMA -DSQLITE_OMIT_PROGRESS_CALLBACK
-DSQLITE_OMIT_QUICKBALANCE -DSQLITE_OMIT_REINDEX
-DSQLITE_OMIT_SCHEMA_PRAGMAS -DSQLITE_OMIT_SCHEMA_VERSION_PRAGMAS
-DSQLITE_OMIT_SHARED_CACHE -DSQLITE_OMIT_SUBQUERY
-DSQLITE_OMIT_TCL_VARIABLE -DSQLITE_OMIT_TEMPDB -DSQLITE_OMIT_TRACE
-DSQLITE_OMIT_TRIGGER -DSQLITE_OMIT_TRUNCATE_OPTIMIZATION
-DSQLITE_OMIT_VACUUM -DSQLITE_OMIT_UTF16 -DSQLITE_OMIT_VIEW
-DSQLITE_OMIT_VIRTUALTABLE -DSQLITE_OMIT_WAL -DSQLITE_OMIT_XFER_OPT"
-f makefile.msc all dll

The following options cause compile-time errors and I could not use
them (yes, to be expected, fair enough):

  SQLITE_OMIT_COMPLETE
  SQLITE_OMIT_GET_TABLE

File sizes:

2011/09/10  21:23           381,162 libsqlite3.lib
2011/09/10  21:23           373,588 sqlite3.lo
2011/09/10  21:23           382,464 sqlite3.exe
2011/09/10  21:23           327,680 sqlite3.dll

Searching the archives for previous posts on this subject, I find from
2006 suggesting removing optional features:

  http://www.mail-archive.com/sqlite-users@sqlite.org/msg19232.html

And from this year also alluding that using the OMIT options should do
the trick:

  http://www.mail-archive.com/sqlite-users@sqlite.org/msg62260.html

Am I missing something?  Is someone having better luck at this than me?

Cheers,
Richard.
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to