Ubuntu16 下载、编译和使用googletest

本文详细介绍了如何下载、编译并运行GoogleTest的过程。通过具体的命令行操作步骤,展示了如何生成静态库或共享库,以及如何编译并运行自带的测试样例。

一、下载

最新的googletest包含了googletest和googlemock。
这里写图片描述

这里写图片描述

sudo git clone https://github.com/google/googletest.git
cd googletest/googletest/

二、编译

1) 在googletest目录下,新建mybuild文件夹,并进入该目录。

sudo mkdir mybuild
cd mybuild

2) cmake,生成makefile文件后,再make。
cmake有下面一些可选项。
这里写图片描述
默认不开启,生成libgtest.a 和 libgtest_main.a库文件

sudo cmake ..
sudo make

这里写图片描述
编译完成。

下面演示开启效果。
2.1 开启BUILD_SHARED_LIBS
2.1.1 执行cmake命令,在mybuild文件夹下生成了Makefile文件。

sudo cmake -DBUILD_SHARED_LIBS=ON ..

这里写图片描述
2.1.2 执行make命令。生成共享库libgtest.so 和 libgtest_main.so。

sudo make

这里写图片描述

2.2 开启gtest_build_samples
2.2.1 执行cmake命令,在mybuild文件夹下会将googletest自带的10个sample生成可执行文件。

sudo cmake -Dgtest_build_samples=ON ..

2.2.2 执行make命令。生成sampleX_unittest执行文件。

sudo make

这里写图片描述

cmake可选项也可以多个一起使用,如:

sudo cmake -DBUILD_SHARED_LIBS=ON -Dgtest_build_samples=ON ..

三、运行和测试

进入mybuild文件夹目录,运行你想测试的sample文件。如测试sample1:

./sample1_unittest

这里写图片描述

### 如何在 Ubuntu 系统上下载安装 GoogleTest #### 下载依赖项 为了成功编译并运行 GoogleTest,在 Ubuntu 上需要先安装一些必要的开发工具库。这些工具可以通过 `apt` 包管理器来完成安装。 ```bash sudo apt update && sudo apt install -y build-essential cmake git pkg-config ``` 上述命令会安装 CMake、Git 其他构建所需的工具[^3]。 #### 下载 GoogleTest 源码 GoogleTest 的源码可以从其官方 GitHub 仓库获取。以下是具体的下载方法: 通过 `wget` 获取指定版本的压缩包文件: ```bash wget https://github.com/google/googletest/archive/refs/tags/release-1.10.0.tar.gz tar -xzf release-1.10.0.tar.gz cd googletest-release-1.10.0/ ``` 或者使用 Git 克隆最新版本的代码: ```bash git clone https://github.com/google/googletest.git cd googletest ``` 这两种方式都可以获得 GoogleTest 的源码,具体选择取决于个人需求[^5]。 #### 编译与安装 进入解压后的目录后,可以按照以下步骤进行编译安装: 创建一个临时构建目录,并执行 CMake 配置过程: ```bash mkdir build && cd build cmake .. ``` 如果一切正常,则继续执行编译操作: ```bash make ``` 最后将生成的目标文件安装到系统的标准路径中: ```bash sudo make install ``` 此时,GoogleTest 已经被正确安装到了 `/usr/local/lib` `/usr/local/include` 中[^4]。 #### 解决可能遇到的问题 在某些情况下可能会发生错误提示找不到头文件或其他链接问题。这通常是因为环境变量未设置正确所致。可通过修改 `.bashrc` 文件添加以下内容解决: ```bash export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH source ~/.bashrc ``` 另外需要注意的是,当系统存在多个版本的 GCC 或 G++ 时,应确保所使用编译器支持 C++11 及以上标准[^1]。 #### 使用示例 下面是一个简单的单元测试案例展示如何应用 GoogleTest 进行功能验证: ```cpp #include <gtest/gtest.h> TEST(SampleTest, BasicAssertions) { EXPECT_TRUE(true); } int main(int argc, char **argv) { ::testing::InitGoogleTest(&argc, argv); return RUN_ALL_TESTS(); } ``` 保存为 `example_test.cpp` 后可利用如下脚本将其编译成可执行程序: ```bash g++ example_test.cpp -lgtest -lpthread -o example_test ./example_test ``` 这样就可以看到测试结果输出了[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值