[Windows]MSYS2でGoogle Testをインストールする方法

ソフトウェア

こんにちは! mnbd(@mnbbbbbd)です。

相談者
相談者

C++の勉強をしてて、MSYS2環境下でGoogle Testの使いたい。
でもインストールがうまくできないんだけど、どうしたらいいでしょう?

管理人
管理人

Google Testをインストールしたい場合、githubからソースコードを取ってきてビルドしますが、MSYS2環境下ではうまくいきません。
ここではその原因と対処法をご説明いたします。

本記事には、以下のことを知ることができます。

  • MSYS2環境下でC++のGoogle Testをインストールする方法

対処法のみをお知りになりたい方は、目次より手順にお進みください。

前提

  • MSYS2とC++の環境設定ができていること
  • MSYS2でパッケージを管理するpacmanについて知っていること

原因は?

MSYS2環境でGoogle Testをビルド&インストールする場合、githubからソースコードを取得してくるのが一般的です。

しかし現在(2021/02/23)では、この方法で単純にビルドできません。

ソースコードを解凍し、buildディレクトリを作り、その中で、cmakeとmakeコマンドを実行しますが、makeコマンドの実行時に以下のようなエラーがでます。

$ make
$ mingw32-make: *** No targets specified and no makefile found.  Stop.

対処法

MSYS2では、Google Testのパッケージを提供していて、本家ではなく、こちらを使うことで解決できます。

MSYS2のパッケージ管理ソフトのpacmanを使用することで簡単にインストールできます。

以下のコマンドを実行してください。

$ pacman -S mingw-w64-x86_64-gtest

本家の方法ですと、VSCodeなどに自前でヘッダファイルのパスを設定する必要がありますが、こちらの方法ですと、通常のMSYS2環境にヘッダファイルが含まれますので、Google Testのために設定する必要はありません。

ただ、ソースコードに#includeとして設定すればオッケーです。

動作確認は以下のページを参考にしてみてください。

補足

Windowsでプログラミング環境を構築する場合、いくつかの種類があります。

たとえば、gitをMSYS2で使用する場合です。

Windowsにインストーラーでインストールしてパスを通すことで使用できますが、pacmanからもインストール可能です。

またこうしたいくつかの手段を混在させてMSYS2で使用することもできます。

私はgitを混在させて使ってしまって、アップデート後に動かなくなってしまったことがありました。

gitそのものの難解さもありますが、対処法がわからず、結果的に一から環境構築した苦い思い出があります。

それ以来、私はなるべくMSYS2のページの確認やpacmanを使用するようにしています。

何かとハマりやすいWindowsでのプログラミング環境ですので、気をつけていきたいところです。

以下の記事なども参考にしてみてください。

まとめ

MSYS2でGoogle Testの環境設定をする方法をご説明いたしました。

以上です。
読んでいただきありがとうございました!

タイトルとURLをコピーしました