#author("2022-12-29T10:41:26+09:00","","") #topicpath ///////////////////////////////////////////////////////////////////////////////// * 目次 [#l314fd42] #contents(); ///////////////////////////////////////////////////////////////////////////////// * 環境構築 [#rac407bd] - 下記から一式 DownLoad する: $ git clone https://github.com/google/googletest.git - タグでチェックアウトする $ git checkout release-1.12.1 - ビルドする(要 cmake) $ cd googletest/build $ cmake .. $ make これでスタティックライブラリ等がビルドされる $ pwd googletest/build $ find -name *.a ./lib/libgtest.a ./lib/libgmock.a ./lib/libgmock_main.a ./lib/libgtest_main.a ///////////////////////////////////////////////////////////////////////////////// * C++11以降 での注意点 [#nd252d48] - 通常、C++11 のコードを g++ でビルドするときは -std=c++11 または -std=c++0x を付与する。しかしこれでは fileno(), open() などの関数が無効化されてしまい、ビルドが通らなくなる。この場合、上記の代わりに -std=gnu++ を付与すればよい。 |~language |~ToolChain |~option |~option GNU Extended) |~remark | |C++11 |(All?) |-std=c++11 |-std=gnu++ | | |~| GCC4.3~4.6 |-std=c++0x |-std=gnu++0x | | |~| GCC4.7 or later |-std=c++11 |-std=gnu++11 | | |C++14 |Clang3.5~4.0 |-std=c++1y |-std=gnu++1y | | |~| Clang5 or later |-std=c++14 |-std=gnu++14 | | |~| GCC4.8~4.9 |-std=c++1y |-std=gnu++1y | | |~| GCC5.1 or later |-std=c++14 |-std=gnu++14 | | |C++17 |Clang3.5~4.0 |-std=c++1z |-std=gnu++1z | | |~| Clang5 or later |-std=c++17 |-std=gnu++17 | | |~| GCC6.1~7.0 |-std=c++1z |-std=gnu++1z | | |~| GCC7.1~11.0 |-std=c++17 |-std=gnu++17 | | |~| GCC11.1 or later |(NONE) |-std=gnu++17 |デフォルトで C++17が有効となる(-std=gnu++17) | |C++20 |Clang5~10.x |-std=c++2a |-std=gnu++2a | | |~| Clang11 or later |-std=c++20 |-std=gnu++20 | | |~| GCC8.1~10.0 |-std=c++2a |-std=gnu++2a | | |~| GCC10.1 or later |-std=c++20 |-std=gnu++20 | | |C++23 |Clang12 or later |-std=c++2b |-std=gnu++2b | | |~| GCC11.1 or later |-std=c++23 |-std=gnu++23 |-std=c++2b, -std=gnu++2b も使える | -- 参考:[[cpprefjp - C++日本語リファレンス>https://cpprefjp.github.io/implementation.html]] ///////////////////////////////////////////////////////////////////////////////// * 参考リンク [#m9c6cb6b] - [[Google Test ドキュメント日本語訳 » 入門ガイド>http://opencv.jp/googletestdocs/primer.html]] - [[GoogleTest (C++ テストフレームワーク) の基本的な使用方法>https://www.qoosky.io/techs/5cde719e89]] - [[GoogleTestでC++のコードをテストする>http://qiita.com/tjun/items/8047bf50930e6de36bdc]] - [[Google Mock ドキュメント日本語訳>http://opencv.jp/googlemockdocs/index.html]]