Centos7 C++ 安装使用googletest单元测试
废话不多说,直接开始吧。
- 环境说明
- 系统环境:centos7.0
- g++ 版本:
- g++ (GCC) 4.8.5 20150623 (Red Hat 4.8.5-36)
- 查看方法: g++ -version,升级方法 yum -y install g++
- 由于最新的google test 有使用的是C++11+的函数,故而g++版本不能太低
- cmake安装: yum -y install cmake
- 下载 google test 安装包:https://github.com/google/googletest
- 安装步骤(依次执行)
- mv googletest-master.zip /home/software/;cd /home/software/
- unzip googletest-master.zip
- cd googletest-master
- cmake ./
- 如果出错,可以查看cmake的版本是否过低,通过yum 方式或者手动安装cmake,cmake的安装包下载地址:https://cmake.org/
- make
- 在安装过程中如果出错,检查环境的C++版本是否过低,若yum不能成功升级,可以选择手动安装(自行安装,此处不过多阐述)
- 安装成功后,在./lib/目录下会生成:
libgmock.a libgmock_main.a libgtest.a libgtest_main.a
- cp -r -v ./lib* /usr/lib/
- mkdir /usr/include/gtest; cp -r -v /home/software/googletest-master/googletest/include/gtest/* /usr/include/gtest/
- 到此安装基本完成,接下去就是简单使用说明了
- 使用说明
- 写一个小的cpp文件
-
/*
* alarm_test.cpp
*
* Created on: 2019年9月17日
* Author: zhiyulinfeng
*/
#include <stdio.h>
#include <stdlib.h>
#include <gtest/gtest.h>
TEST(COutputPopLimitStrategyTest,PositiveNos){
EXPECT_EQ(true,true);
}
int main(int argc,char *argv[]){
::testing::InitGoogleTest(&argc,argv);return RUN_ALL_TESTS();;
}
-
- 编译:g++ -std=c++11 alarm_test.cpp -lpthread /usr/lib/libgtest.a -o alarm_test
- 注意:加上-lpthread 因为在google test 内部用使用到线程,否则会报错
- 注意2:千万记得加上 -std=c++11,环境问题比较纠结
- 看下结果
-
是不是很简单呢?感谢google,有了这个单元测试,妈妈再也不用担心我的程序会croe了。
-
- 写一个小的cpp文件
- PS: 纯个人积累记录分享,未写清楚的可以留言和我交流。
笔者环境:
Centos7 C++ 安装使用googletest单元测试的更多相关文章
- 在centos7上安装Jenkins
在centos7上安装Jenkins 安装 添加yum repos,然后安装 sudo wget -O /etc/yum.repos.d/jenkins.repo http://pkg.jenkins ...
- CentOS7 Jenkins安装
CentOS7 Jenkins安装 CentOS7 Jenkins安装 Download 从Jenkins下载apache-tomcat-8.0.18.tar.gz Install 安装 上传RPM文 ...
- 在 CentOS7 上安装 zookeeper-3.4.9 服务
在 CentOS7 上安装 zookeeper-3.4.9 服务 1.创建 /usr/local/services/zookeeper 文件夹: mkdir -p /usr/local/service ...
- 在 CentOS7 上安装 MongoDB
在 CentOS7 上安装 MongoDB 1 通过 SecureCRT 连接至 CentOS7 服务器: 2 进入到 /usr/local/ 目录: cd /usr/local 3 在当前目录下创建 ...
- 在 CentOS7 上安装 MySQL5.7
在 CentOS7 上安装 MySQL5.7 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建 ...
- 在 CentOS7 上安装 Tomcat9
在 CentOS7 上安装 Tomcat9 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目 ...
- 在CentOS7上安装JDK1.8
在CentOS7上安装JDK1.8 1 通过 SecureCRT 连接到阿里云 CentOS7 服务器: 2 进入到目录 /usr/local/ 中: cd /usr/local/ 3 创建目录 to ...
- centos7.0 安装字体库
最近在centos7.0下用itextpdf将word文档转成pdf时出现字体丢失的情况.网上找了很多资料,各式各样的原因和解决方法.后来经过一番测试发现是centos7.0 minimal没有安装相 ...
- 在centos7中安装Robot Framework
安装前景介绍: 最初,我们是在Windows环境下搭建Robot Framework来对我们的服务进行接口测试的(想知道如何在Windows下安装Robot Framework,可以参考我同事的博客h ...
随机推荐
- MySQL高速缓存
MySQL高速缓存启动方法及参数详解query_cache_size=32M query_cache_type=1,默认配置下,MySQL的该功能是没有启动的,可能你通过show variables ...
- Top 10 顶级项目管理工具
成功的项目都要归功于成功的项目管理.这些工具帮你踏上成功之旅! 项目管理是成功完成项目并使公司变得伟大的秘诀.不,这不是标题党(clickbait) -- 我已经看到两家软件公司(我在那里工作)因为项 ...
- @RequestBody 注意的问题
contentType : "application/json", //只能是这个 RequestBody 不能和form/data共存: @RequestMapping(valu ...
- springcloud(九):熔断器Hystrix和Feign的全套应用案例(二)
一.. 创建Eureka-Server 服务中心项目 1. 创建Eureka-Server 服务中心项目架构如下 2. pom.xml <dependencies> <depende ...
- eShopOnContainers部署在docker的坑
把eShopOnContainers(.net core 的版本是2.1)下载之后,部署到docker上,查看容器eShopOnContainers的项目都部署上去了. 用http://localho ...
- Python基础 2-2 列表的实际应用场景
引言 本章主要介绍列表在实际应用中的使用场景,多维列表(嵌套列表) 如果你需要在列表保存每个人员的一些基本信息,使用列表嵌套来保存这种信息是个不错的主意. 多维列表 列表可以根据实际情况嵌套使用,比如 ...
- DOM的选择器
这几天学习了DOM的选择器,现在来进行一下总结分类. 1.DOM里的元素节点选择器 元素节点选择器包括id,class,name,tagname,高级,关系. 1.1 id选择器 id:返回的是单个对 ...
- Python Web Flask源码解读(四)——全局变量
关于我 一个有思想的程序猿,终身学习实践者,目前在一个创业团队任team lead,技术栈涉及Android.Python.Java和Go,这个也是我们团队的主要技术栈. Github:https:/ ...
- Zookeeper之Leader选举过程
Leader在集群中是一个非常重要的角色,负责了整个事务的处理和调度,保证分布式数据一致性的关键所在.既然Leader在ZooKeeper集群中这么重要所以一定要保证集群在任何时候都有且仅有一个Lea ...
- 依赖倒置原则(DIP)、控制反转(IoC)、依赖注入(DI)(C#)
理解: 依赖倒置原则(DIP)主程序要依赖于抽象接口,不要依赖于具体实现.高层模块不应该依赖底层模块,两个都应该以来抽象.抽象不应该依赖细节,细节应该依赖抽象.(具体看我上一篇贴子) 依赖倒置原则是六 ...