i18n サポート
V8はオプションとしてECMAScript 402仕様を実装します。このAPIはデフォルトで有効ですが、コンパイル時にオフにすることができます。
前提条件
i18nの実装はICUへの依存を追加します。バージョン7.2以降、V8は少なくともICUバージョン63を必要とします。正確な依存関係はV8のDEPS
ファイルで指定されています。
以下のコマンドを実行してthird_party/icu
に適切なバージョンのICUをチェックアウトします:
gclient sync
「最新情報を維持する」を参照してください。
代替ICUチェックアウト
ICUソースを別の場所にチェックアウトし、gyp変数icu_gyp_path
をicu.gyp
ファイルを指すように定義することができます。
システムICU
最後に、システムにインストールされているICUバージョンでV8をコンパイルすることができます。そのためには、GYP変数use_system_icu=1
を指定します。want_separate_host_toolset
も有効になっている場合、適用されたICUはV8スナップショットを生成するためにコンパイルされます。システムICUはターゲットアーキテクチャにのみ使用されます。
V8の埋め込み
V8をアプリケーションに埋め込む場合、アプリケーション自体がICUを使用していない場合でも、次のようにICUを初期化してからV8に呼び出す必要があります:
v8::V8::InitializeICU();
もしICUがコンパイルされていない場合、このメソッドを呼び出しても安全で、何もしません。
i18nサポートなしでのコンパイル
gn args
を使用してv8_enable_i18n_support = false
をコンパイル前に設定することで、i18nサポートなしのV8をビルドすることができます。