Custom SQLite Library

PSPDFKit for iOS does not include a custom version of SQLite, as iOS comes with SQLite already bundled. Depending on the version of iOS, this version is different and will also have different capabilities enabled:

Detect what version is currently active

PSPDFKit and a custom SQLite library

PSPDFKit is dynamically linked with SQLite provided by iOS SDK. However if you link your app with a custom SQLite library, PSPDFKit will automatically use it. You might want to remove the -lsqlite3 string from PSPDFKit.xcconfig inside the framework to remove the system linking.

Make sure your custom SQLite library is built with the following flags:

SQLITE_THREADSAFE=1 or SQLITE_THREADSAFE=2

and if you're using PSPDFLibrary:

To use FTS5:

SQLITE_ENABLE_FTS5

To use FTS4:

SQLITE_ENABLE_FTS3

SQLITE_ENABLE_FTS3_PARENTHESIS

PSPDFKit expects these options and fails early if any of these are missing.