Way to find out which Compilation Options were used to build SQLite Way to find out which Compilation Options were used to build SQLite sqlite sqlite

Way to find out which Compilation Options were used to build SQLite


You can use the compile_options pragma (or the related functions as mentioned in the linked documentation) to view the compile-time options that were used when building SQLite. However, the availability of this pragma (and the related functions) seems to depend on whether it was enabled at compile-time or not. The SQLite documentation says:

Support for the diagnostic functions sqlite3_compileoption_used() and sqlite3_compileoption_get() may be omitted by specifying the SQLITE_OMIT_COMPILEOPTION_DIAGS option at compile time.

So it is likely that your distribution did not enable this feature at compile time, which means you may not be able to view the options.


THere is no way to ask libsqlite for its exact configuration short of trying all the possible permutations and testing each to see which behaves the same (unless Apple has made custom modifications). The best you can get to call sqlite3_libversion which returns sqlite's version number.


It looks like the only different in the pragma settings is the cache_size which is default 2000 but on the iPhone it is 500.

On some systems it's possible to get read the compiler setting with this:objdump --full-contents --section .GCC.command.line