カスタム sqlite3 実行可能ファイルをコンパイルして、ICU のサポートを有効にしました (照合規則: utf-8 のアクセントによる並べ替えなど)。
私はrvmを使用しています.ruby sqlite gemは以下を使用しているようです:
~/.rvm/gems/ruby-1.9.3-p392@project/gems/sqlite3-1.3.7/lib/sqlite3/sqlite3_native.so
私のデータベース作成コードには照合規則が必要なので、sqlite gem を使用するとエラーが発生します。
/home/user/.rvm/gems/ruby-1.9.3-p392@project/gems/sqlite3-1.3.7/lib/sqlite3/database.rb:91:in `initialize': SQLite3::SQLException: no such function: icu_load_collation (Sequel::DatabaseError)
...デフォルトのsqliteには照合ルールが組み込まれていないため、これは理にかなっています。
カスタムの sqlite3 実行可能ファイルを直接使用すると、すべて正常に動作します。
私の質問は次のとおりです。
ICU サポートが既に組み込まれている sqlite3 の debian/ubundu パッケージを取得する方法はありますか? 何も見つかりませんでした。
(1) が不可能な場合、sqlite3 をコンパイルして、実行可能ファイルの代わりに静的ライブラリを作成する必要がありますか?
(2)が可能な場合、どうすれば適切に変更できますか? バンドラーを使用し、別のマシンにデプロイします。
sqlite gem にネイティブ実行可能ファイル (または (2) が可能な場合は .so) を表示させる別の方法はありますか。
前もって感謝します、
K.