假设您想安装 googletest/home/me/googletest
.
浏览到 googletest GitHub 存储库https://github.com/google/googletest
。 (请勿使用您在其他地方获得的可能已过时的版本。)
使用克隆或下载链接,克隆或下载并解压
来源为(比方说)./googletest
在你当前目录下CWD
(where CWD
is not /home/me/
).
Then in CWD
:-
$ mkdir googletest_build
$ cd googletest_build
$ cmake -DCMAKE_INSTALL_PREFIX:PATH=/home/me/googletest ../googletest
$ make
$ make install
之后,您会发现:-
/home/me/googletest/
lib/
libgmock.a
libgmock_main.a
libgtest.a
libgtest_main.a
include/
gmock/
# gmock header files
gtest/
# gtest header files
然后,您可以在源代码中使用 gtest/gmock 标头,例如:
#include <gtest/gtest.h>
#include <gmock/gmock.h>
并编译并链接 gtest/gmock 程序,例如:
g++ -pthread -I/home/me/googletest/include -c -o my-unit-tester.o my-unit-tester.cpp
g++ -o my-unit-tester my-unit-tester.o -L/home/me/googletest/lib -lgtest -lgmock -pthread
使用-I...
告诉编译器 gtest/gmock 标头所在位置的选项
使用-L...
告诉链接器 gtest/gmock 库所在位置的选项。
Pass -pthread
编译器和链接器,因为 gtest/gmock 库是
默认构建多线程。
安装后您不再需要CWD/googletest
or CWD/googletest_build
.
您可能希望将附加选项传递给cmake
,在这种情况下,构建产品将根据这些附加选项的含义而有所不同。