ビルド

ビルド #

MMDAgent-EX の動作環境は macOS, Linux, Windows です。Windows上での WSL2 もサポートしています。以下の環境でビルド動作を確認しています。本ページの手順でビルドを実行して実行環境を構築してください。

  • Windows: Windows 11 with Visual Studio 2022
  • macOS: M2 Macbook Air / macOS Ventura, Intel Mac / macOS Sonoma
  • Linux: Ubuntu-22.04, Ubuntu-20.04
  • Linux on WSL: Ubuntu-22.04 on WSL2 (v1.2.5.0) on Windows

Windows のビルド済み実行バイナリが GitHubのReleaseページにバージョンごとに置いてあるので、ビルド環境を構築できない場合はそちらをご利用ください。

コードの入手 #

!MMDAgent-EX 関連のレポジトリを clone するには Git LFS が必須です。

Git LFS がインストールされているか事前にチェックし、なければインストールします。

チェックおよびインストール方法

インストールされているかどうかチェック

git lfs version

macOS (brew)

brew install git-lfs
git lfs install

Linux

sudo apt install git-lfs
git lfs install

Windows

Git LFS のサイト から LFS 拡張をインストール。

準備できたら GitHubよりレポジトリを入手する。

git clone https://github.com/mmdagent-ex/MMDAgent-EX.git

ビルド手順 #

macOS #

以下のパッケージが必要。全てあらかじめ brew install する。

  • cmake
  • poco
  • glew
  • libjpeg
  • re2
  • portaudio
  • minizip
  • libsndfile
  • libsamplerate
  • sox
  • rabbitmq-c
  • libomp
  • librdkafka

CMake でビルド。ビルドした実行バイナリとプラグインが Release/ ディレクトリ以下にコピーされる。

cd MMDAgent-EX
cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build build

libomp 関連でエラーが出る場合、ヘッダファイルがうまくインストールされないことがあるため、以下を行ってから再トライ。

brew link --force libomp

jpeg 関連でエラーが出る場合、代わりに jpeg-turbo をインストールすることで解決することがある。

brew install jpeg-turbo

brew パッケージの場所は、環境変数 HOMEBREW_PREFIX が定義されていればそれを使い、指定されていなければ brew --prefix の出力を用います。

Linux (Ubuntu, WSL2) #

必要なパッケージ名の一覧が requirements-linux.txt ファイルにあるので、その中に記されているパッケージを全て事前に apt install しておく。Ubuntu であれば以下の要領で一括で行える。

cd MMDAgent-EX
sudo apt install `cat requirements-linux.txt`

CMake でビルド。

cmake -S. -Bbuild -DCMAKE_BUILD_TYPE=Release
cmake --build build

ビルド成功後、必要な実行バイナリとプラグインは Release/ ディレクトリ以下にコピーされる。

Windows #

Visual Studio 2022 でビルドする。インストールの際には「C++によるデスクトップ開発」にチェックを入れ、MSVC v143 と Windows 11 SDK (10.0.22000.0で確認)を併せてインストールする。

  1. MMDAgent_vs2022.sln を Visual Studio 2022 で開く
  2. ソリューションエクスプローラで main を右クリックしてスタートアッププロジェクトに設定
  3. ビルド設定を Release に設定
  4. 「ソリューションのビルド」を実行
※ビルドがうまくいかない場合、リリースごとに公開されている実行バイナリを使うこともできます。 GitHubのリリースページから最新の win32 用の zip ファイルをダウンロードし、中身を Release フォルダ以下にコピーしてください。

ビルドファイル #

実行に必要な全てのファイルは Release フォルダ以下に生成される。

以下はWindowsの例。macOSとLinuxでは .exe 拡張子は無く .dll は .so になる。

AppData 以下には実行時に必要な各種データファイルがあり、DLLs には動作に必要な外部 DLL が同梱されている(Windowsのみ)。

Release/
├── MMDAgent-EX.exe
├── MMDAgent-EX.mdf
├── AppData/
├── DLLs/
└── Plugins/
    ├── Plugin_AnyScript.dll
    ├── Plugin_Audio.dll
    ├── Plugin_Flite_plus_hts_engine.dll
    ├── Plugin_Julius.dll
    ├── Plugin_Kafka.dll
    ├── Plugin_LookAt.dll
    ├── Plugin_Network.dll
    ├── Plugin_Open_JTalk.dll
    ├── Plugin_RabbitMQ.dll
    ├── Plugin_Remote.dll
    ├── Plugin_TextArea.dll
    ├── Plugin_Variables.dll
    └── Plugin_VIManager.dll

インストールが必要な場合、この Release フォルダ以下を、ディレクトリ構造を保ったままコピーする。

追記 #

以下の同梱ライブラリは Windows でのみ使われる。macOS / Ubuntu ではこれらの同梱ファイルは使われず、システムにインストールされているパッケージのものがリンクされる。

Library_RE2
Library_zlib
Library_JPEG
Library_libsndfile
Library_PortAudio
Library_glew
Library_Poco
Library_librdkafka
comments powered by Disqus