Windows 11 + Visual Studio 2022 仮想イメージで Mozc をビルドする

いま Linux 界隈で話題の Mozc を「Windows」で使ってみる記事となります。

ビルド方法については、公式リポジトリに記載があるとおりですが、あまり Visual Studio の環境を構築したことがない方のためにも簡単にできる方法を紹介します。

Windows で Mozc を使うメリット

Windows や macOS では基本的には、Google 日本語入力をインストールするのが簡単で推奨されます。

それでもあえて Mozc を使うメリットとは・・・

上付き文字・下付き文字の変換

下記の記事にもまとめられています。

たとえば「N^46」と入力すると、「N⁴⁶」に変換できます。
これは、まだ記事執筆時点の Google 日本語入力開発版(2.28.4750.100)には入っていません。

Mozc 上付き文字の変換

Windows 11 のライトモードでも見やすいタスクバーアイコン

もともと、Google 日本語入力と Mozc ではアイコンなどは異なるので、このまま Google 日本語入力に取り込まれるかは不明ですが、12月に下記の変更が入っています。

下記のように、ライトモードでも黒で縁取りされるため、視認性が向上します。

Mozc, Google 日本語入力のタスクバーアイコンの違い

サポート終了した環境でも動作する(可能性がある)

現在、Google 日本語入力は「64bit 版 Windows 10 以降」のみしかインストールできません。

32bit 版 Windows でも動作する可能性がありますし、
IMM32 のファイルもビルドされますので、古い OS でも動作する可能性があります。

Google 日本語入力 32bit インストール不可

(試していないので実際は動作しない可能性もあります)

デメリット

自分でビルド環境を用意してビルドしなければならない以外にもデメリットは存在します。

Google 日本語入力と OSS 用の辞書は異なるため、Mozc ではそのままでは入力できない語が存在します。

※Gboard 向けの記事ですが、その後 Google 日本語入力にも反映されています。

Windows 開発用イメージのセットアップ

まずは、開発用イメージを用意します。

今回は VirtualBox で確認しましたが、お好みの物を選んでいただいて問題ないかと思います。

最近は、WSL2 の普及もあり、Hyper-V を使われる方も多いかと思います。
こちらからダウンロードしなくても、Hyper-V マネージャーから簡単にインストールすることもできるようです。

また、VM は「日本語化せずに英語のまま」セットアップするように注意してください。

日本語にしてしまうと、ビルド時に cp932 のエラーが発生してしまいますが、英語環境のままだと問題は発生しませんでした。

Visual Studio の設定

ビルドするために下記を追加します。

Workloads から「Desktop development with C++」をインストールします。

この際、VM のリソースに余裕が無ければ「.NET Desktop development」や UWP 関連は削除しても問題ありません。

Visual Studio Community 2022 Desktop development with C++ インストール

また、Git と Python もインストールします。

Visual Studio Community 2022 Python 3, Git for Windows インストール

Python にパスを通す

Visual Studio で Python をインストールしても、コマンドプロンプトで python と入力すると、Microsoft Store が表示され、Python のインストールを促されます。

最初から Store から Python をインストールしていればこの作業は不要ですが、パスを通しておきます。

順序が逆になりますが、Qt のインストールに時間がかかるのでその合間にやるのも良いかと思います。

今回は「C:\Program Files (x86)\Microsoft Visual Studio\Shared\Python39_64」となります。
なお、「%USERPROFILE%\AppData\Local\Microsoft\WindowsApps」に python コマンドのストアでのリンクがあるので、今回インストールした Python はその上に記載します。

Windows 11 Python にパスを通す

Python コマンドを入力し、ストアが表示されなくなれば完了です。

C:\Users\User>python
Python 3.9.7 (tags/v3.9.7:1016ef3, Aug 30 2021, 20:19:38) [MSC v.1929 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>

Qt のインストール

「プロパティ」、「辞書ツール」など GUI を使うためには Qt が必要となります。これは Visual Studio とは別にインストールします。

Qt のインストールには、アカウントが必要となります。

Qt 5.15.2 の MSVC 2019 32-bit のみチェックを入れます。

他のツールは不要ですのですべてチェックを外します。

Qt 5.15.2 MSVC 2019 32-bit インストール

Visual Studio 2022 でも QT は 2019 版で正常にビルドできました。

ビルド

準備ができたのでいよいよビルドです。

前半のコマンドは公式手順通りとなります。

git config --global core.autocrlf false
git config --global core.eol lf

mkdir C:\work
cd C:\work
git clone https://github.com/google/mozc.git -b master --single-branch --recursive

cd C:\work\mozc\src\third_party
git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git
python -m pip install six

後半の手順は少し異なりますので下記を実行します。

  • Visual Studio 2022 向けに少し変更
  • 公式のインストーラでのインストールパス C:\Qt\5.15.2\msvc2019 に変更
"C:\Program Files\Microsoft Visual Studio\2022\Community\VC\Auxiliary\Build\vcvarsamd64_x86.bat"

cd C:\work\mozc\src
python build_mozc.py gyp --qtdir=C:\Qt\5.15.2\msvc2019 --msvs_version=2022
python build_mozc.py build -c Release package

ビルドにはそれなりに時間がかかります。

手元の Core i5 6400(2.7GHz)で4コア中3コアをゲストに振った状態でも30分かかりました。

Mozc のインストール

ビルドできたらいよいよインストールです。

まずはファイルをコピーします。

mkdir "%ProgramFiles(x86)%\Mozc"
mkdir "%ProgramFiles(x86)%\Mozc\platforms"

copy C:\work\mozc\src\out_win\Release\mozc_broker32.exe "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\Release\mozc_cache_service.exe "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\Release\mozc_renderer.exe "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\Release\mozc_server.exe "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\Release\mozc_ja_tip32.dll "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\Release_x64\mozc_ja_tip64.dll "%ProgramFiles(x86)%\Mozc\"

copy C:\work\mozc\src\out_win\ReleaseDynamic\mozc_tool.exe "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\ReleaseDynamic\Qt5Core.dll  "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\ReleaseDynamic\Qt5Gui.dll  "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\ReleaseDynamic\Qt5Widgets.dll  "%ProgramFiles(x86)%\Mozc\"
copy C:\work\mozc\src\out_win\ReleaseDynamic\platforms\qwindows.dll  "%ProgramFiles(x86)%\Mozc\platforms\"
copy C:\work\mozc\src\out_win\Release_x64\mozc_broker64.exe "%ProgramFiles(x86)%\Mozc\"

インストールします。

regsvr32 "%ProgramFiles(x86)%\Mozc\mozc_ja_tip32.dll"
regsvr32 "%ProgramFiles(x86)%\Mozc\mozc_ja_tip64.dll"

「バージョン」などと変換して下記のように表示されれば OK です。

「ばーじょん」変換 Mozc-2.28.4960.100+24.11.oss

最後に

今回は、Windows 開発用イメージを使うことで簡単に Mozc をビルドできることを確認しました。

私は Google の中の人でも、Mozc の開発に直接関わっているわけでもありませんが、下記のような方法で応援する方が増えることを期待しています。

Comments

comments

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

*

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)