sqliteをダウンロードしましたhttp://www.sqlite.org/sqlite-autoconf-3070701.tar.gzICUでsqliteをコンパイルするには?
icuでsqliteをコンパイルするにはどうしたらいいですか?
sqliteをダウンロードしましたhttp://www.sqlite.org/sqlite-autoconf-3070701.tar.gzICUでsqliteをコンパイルするには?
icuでsqliteをコンパイルするにはどうしたらいいですか?
1)あなたは、ICUの拡張子をコンパイルして使用するための最も簡単な方法は、 を構築し、動的にロード可能なSQLiteの拡張としてそれを使用することであるSQLiteの のような動的拡張がhttp://www.sqlite.org/cvstrac/fileview?f=sqlite/ext/icu/README.txt
を引用し、それをコンパイルすることができます。この * nixの上でGCCを使用して行うには:
gcc -shared icu.c `icu-config --cppflags --ldflags` -o libSqliteIcu.so
をあなたはgccがsqlite3ext.h とsqlite3.hを見つけることができるように、 "-I" のフラグを追加する必要があります。結果として得られる共有ライブラリlibSqliteIcu.soは、その他の動的にロード可能な 拡張と同じ方法でsqliteにロードされた です。
あなたが有効になってICUでのSQLiteをコンパイルすることができます
2)(ロードがSQLiteのプロンプトで.load libSqliteIcu.so
です)。 http://www.sqlite.org/compile.html によると、あなたはSQLITE_ENABLE_ICU
マクロを定義する必要があります。
はCFLAGS変数に-DSQLITE_ENABLE_ICU
を追加するか、いくつかの設定ファイルに#define SQLITE_ENABLE_ICU
を追加します。
さて、ここでは標準的なドキュメントには記載されていないものがあります。ここではICUで設定呼び出す例が有効になっている:
CFLAGS='-O3 -DSQLITE_ENABLE_ICU' CPPFLAGS=`icu-config --cppflags` LDFLAGS=`icu-config --ldflags` ./configure
あなたをもicu-config
プログラムがインストールされている必要があり、それが動的に右リンクする
(それは
libicu
またはlibicu-dev
パッケージからですか)? どのようにして静的にリンクできますか? –ダイナミックなlibicu.so(あれ)があれば動的にリンクします。リンケージを静的に変更するには、 'icu-config --ldflags'を実行し、出力に-Bstaticまたは-Bdynamicが含まれているかどうかを確認します。そうでない場合は、LDFLAGSをLDFLAGS = "-Wl、-Bstatic"に変更します。-Wl、-Bdynamic "' – osgx
sqlite3.c :(。text + 0xcb64b):undefined 'utf8_nextCharSafeBody_3_6 ' –