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 ...
随机推荐
- Maven多模块项目打包前的一些注意事项(打包失败)
一. 最近在打包Maven项目时遇到了点问题,这个项目是Maven多模块项目,结构如下: projectParent├── xxxx-basic├── xxxx-web1├── xxxx-collec ...
- 关于Linux的简单介绍
Linux: 诞生日期:1991年 开发者:林纳斯·托瓦茨 特点:免费,开源 发行版本:centos|red Hat|Ubuntu|红旗等 思想:一切都是文件 重要文件目录 bin:二进制 ...
- windows server2012 nVME和网卡等驱动和不识别RAID10问题
安装2012---不识别M.2 nVME,下官方驱动,注入到系统里 缺多驱动---用ITSK万能驱动添加:|Win8012R2.x64(可解决不支持操作系统,win10与server2012R2通用) ...
- ABAP 查看采购订单行项目已开票金额和已清金额
FUNCTION zmm_fm_po_invence. *"----------------------------------------------------------------- ...
- 关于C#中的“?”
目录 1. 可空类型修饰符(T?) 2. 三元(运算符)表达式(?: ) 3. 空合并运算符(??) 4. NULL检查运算符(?.) 关于C#中的"?" shanzm-2019年 ...
- 七缸发动机预热,docker swarm + .net core 高速飙车成功
(图片来源:Microsoft Blog) 上周五上午在我们将 .net core 博客站点由 docker swarm 自动驾驶改为 docker-compose 手动驾驶后,依然发生了翻车,意料之 ...
- 夜空中最靓的二狗子是如何让 HTTPS 快上加快的?
二狗子是某不知名网站的站长,他热衷于通过博客分享日常的一些工作.生活.技术等,立志要成为夜空中最靓的仔. 但是前段时间有几个用户反馈,网站总是莫名会跳转到一个 xx 网站,除此之外访问速度也有点慢.作 ...
- TokuDB · 引擎特性 · HybridDB for MySQL高压缩引擎TokuDB 揭秘
原文出处:阿里云RDS-数据库内核组 HybridDB for MySQL(原名petadata)是面向在线事务(OLTP)和在线分析(OLAP)混合场景的关系型数据库.HybridDB采用一份数据存 ...
- 怒改springMVC项目为springBoot项目
背景:公司最近在做项目升级,融合所有项目,但是目前使用的一个系统还是最原始的框架 springMVC+spring+mybatis ,前端还是jsp,easyui(技术老的掉牙),终于出手了,结果.. ...
- python学习——高阶函数
递归函数 在函数内部,可以调用其他函数.如果一个函数在内部调用自身本身,这个函数就是递归函数.使用递归函数的优点是逻辑简单清晰,缺点就是过深的调用会导致栈溢出.但是针对尾递归优化的语言可以通过尾递归防 ...