After enabling USE tools dev-db/sqlite-3.8.10.1 package size increased from 1.81 to 6.10 MiB, please use shared libsqlite3 copy if possible. $ du -s /usr/bin/sqlite3* 82 /usr/bin/sqlite3 898 /usr/bin/sqlite3-diff 886 /usr/bin/sqlite3-show-db 870 /usr/bin/sqlite3-show-journal 870 /usr/bin/sqlite3-show-stat4 878 /usr/bin/sqlite3-show-wal $ objdump -p /usr/bin/sqlite3|grep NEEDED|sort NEEDED libc.so.6 NEEDED libpthread.so.0 NEEDED libreadline.so.6 NEEDED libsqlite3.so.0 $ objdump -p /usr/bin/sqlite3-*|grep NEEDED|sort -u NEEDED libc.so.6 NEEDED libdl.so.2 NEEDED libicui18n.so.55 NEEDED libicuuc.so.55 NEEDED libpthread.so.0
In vanilla SQLite 3.11.0 even /usr/bin/sqlite3 would statically include code from sqlite3.c. I added my patches to SQLite 3.11.0 (sqlite-3.11.0-full_tarball-build.patch, sqlite-3.11.0-nonfull_tarball-build.patch), which make some executables be linked against libsqlite3.so.0: $ du /usr/bin/sqlite* 84 /usr/bin/sqlite3 76 /usr/bin/sqlite3-analyzer 40 /usr/bin/sqlite3-diff 12 /usr/bin/sqlite3-rbu 28 /usr/bin/sqlite3-show-db 12 /usr/bin/sqlite3-show-journal 12 /usr/bin/sqlite3-show-stat4 16 /usr/bin/sqlite3-show-wal $ scanelf -qF "%F: %n" /usr/bin/sqlite* /usr/bin/sqlite3: libsqlite3.so.0,libreadline.so.6,libc.so.6 /usr/bin/sqlite3-analyzer: libsqlite3.so.0,libtcl8.6.so,libc.so.6 /usr/bin/sqlite3-diff: libsqlite3.so.0,libc.so.6 /usr/bin/sqlite3-rbu: libsqlite3.so.0,libc.so.6 /usr/bin/sqlite3-show-db: libsqlite3.so.0,libpthread.so.0,libc.so.6 /usr/bin/sqlite3-show-journal: libc.so.6 /usr/bin/sqlite3-show-stat4: libsqlite3.so.0,libc.so.6 /usr/bin/sqlite3-show-wal: libc.so.6 https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=259d8bab051acba85157426d1df7c03d0c9d97bf