node-sqlite3パッケージを必要とするパッケージがあります。ただし、node-sqlite3 を sqlcipher サポート付きでビルドする必要もあります。そうしないと、パッケージが正しく機能しなくなります。
以下を使用して node-sqlite3 をインストールしています。
export LDFLAGS="-L/usr/local/lib"
export CPPFLAGS="-I/usr/local/include/"
npm install sqlite3 --build-from-source --sqlite_libname=sqlcipher --sqlite=/usr/local/lib --save
ただし、完了してpackage.jsonを見ると、次のように表示されます。
"sqlite3": "^3.1.8"
sqlcipher の要件については言及されていません。この要件で単純にパッケージをインストールしようとすると、sqlcipher サポートを使用してビルドされず、適切なキーが存在する場合でも、sqlcipher で暗号化されたデータベースを読み取ることができないため、アプリが失敗します!
さらに、別のプラットフォームでは、sqlcipher が同じ場所にインストールされるという保証はありませんが、問題を少し簡単にするために、既に構築されており、どこかに存在すると仮定できます。
この依存関係の要件を適切に指定するにはどうすればよいですか?