We had a huge issue with sqlite3-cipher using the same symbol prefixes as the regular sqlite3 project. We had to learn enough low level stuff to change the symbol names because we couldn't replace the OS libraries.
Sqlite3-cipher changed their symbol names to just sqlcipher, effectively making it an unrelated project. If this had been the case at the start, we would have saved a few weeks of learning enough about this little universe we don't normally go into.
Academically it was great for us to get our hands dirty, but that isn't the only thing that matters (unfortunately)