ARTS-S cmake,googletest使用】的更多相关文章

编译gtest 下载指定tag的源代码 git clone https://github.com/google/googletest.git cd googletest git checkout tags/release-1.8.1 -b release-1.8.1 编译 cd googletest export GTEST_DIR=/xxxx/googletest/googletest g++ -std=c++11 -isystem ${GTEST_DIR}/include -I${GTEST…
直接在CMake项目中编译GoogleTest和GoogleMock作为项目的一部分 本文是关于如何将GoogleTest和GoogleMock在没有预先编译安装在机器的情况下,直接在项目中作为项目的一部分进行编译. 目录: 环境依赖 GoogleTest和GoogleMock 在CMake项目中配置GoogleTest和GoogleMock 1. 环境依赖 Note: 环境只列出了本文实现过程中本人机器的配置,不代表最低配置 ubuntu 14.04 64位 CMake 2.8 2.Googl…
一.前提: 1.假定你的系统为centos6系列 2.假定你已经安装了基本的编译环境,gcc,g++4.4.7 3.假定你已经设置了环境变量:KDS_MOBILE_STOCK_HOME 4.假定你已经安装了unzip解压缩软件,若未安装,请安装之:yum install zip unzip 5.假定你已经安装了vim,若未安装可用vi代替vim命令 二.安装cmake 1.下载源码:http://www.cmake.org/files/v2.8/cmake-2.8.12.tar.gz 2.解压源…
一.概述 Googletest是一个用来写C++单元测试的框架,它是跨平台的,可应用在windows.linux.Mac等OS平台上: 代码框架: [root@docker googletest-release-]# ll build build-aux CHANGES cmake CMakeLists.txt codegear configure.ac CONTRIBUTORS COPYING include m4 make Makefile.am msvc README samples sc…
开发工具 我和我的组员的都是使用的是大一老师推荐的codeblocks,所以,就愉快的决定了工具统一为codeblocks,语言C++. 测试单元 老师推荐的是JUnit和VSTS工具,但同学们从大一到现在最熟悉的还是codeblocks编程软件.既然的其他编程软件能加载测试工具,我想,codeblocks也行,百度后发现googleTest支持codeblocks(我就说会有的..).那么接下来,是具体的配置过程. 工具下载 1. googleTest官网上最新版为1.8.0版本的,但我试了并…
编译https://github.com/RAttab/reflect, 发现需要gcc4.7以上的版本才行.于是编译安装最新的gcc-6.2.0, 过程算顺利. http://www.linuxfromscratch.org/blfs/view/svn/general/gcc.html 还需要cmake,只能下载源码编译安装(git...). boost可以通过yum方式安装 boost boost-doc boost-devel 另外还需要编译 https://github.com/Cyli…
CMake简介 原文:http://blog.gclxry.com/use-cmake-on-windows/ 你或许听过好几种 Make 工具,例如 GNU Make ,QT 的 qmake ,微软的 MS nmake,BSD Make(pmake),Makepp,等等.这些 Make 工具遵循着不同的规范和标准,所执行的 Makefile 格式也千差万别.这样就带来了一个严峻的问题:如果软件想跨平台,必须要保证能够在不同平台编译.而如果使用上面的 Make 工具,就得为每一种标准写一次 Ma…
单元测试是一种保证代码质量的手段.程序员可以通过写单元测试来保证自己写的代码的功能正确. 本人所在公司使用GoogleTest测试框架来进行单元测试.虽然现在在公司的工程代码中写单元测试已经驾轻就熟,但是只是知其然不知其所以然,所以再此对Google Test测试框架进行一个全面的了解与学习. 本文只涉及Google Test的使用,不涉及对其源码的学习与解读. Linux环境搭建Google Test测试环境 Google Test托管在github上,先通过git把Google Test拉取…
准备工作 为了在你的测试中使用GoogleTest, 你必须让你的编译系统 知道到哪里去寻找GoogleTest 的头文件和源文件. 具体的方法只能依赖于你具体使用的哪种编译系统了,一般来讲这个非常容易直接的. 编译 如果你的GoogleTest 放在${GTEST_DIR} 目录下面.(使用 Visual Studio 和 Xcode)编译它产生一个库. ${GTEST_DIR}/src/gtest-all.cc 下面是对通用的编译方法解释,直接略过,参看https://github.com/…
<<Modern CMake>> 翻译 2.4 项目目录结构 本节内容有点跑题.但我认为这是一个很好的方法. 我将告诉你如何规划项目的目录. 这是基于惯例,但将帮助您: 轻松阅读其他按照相同模式的项目, 避免导致冲突的模式, 避免混淆和使构建变得复杂. 首先,如果您的项目被叫做 project,包含一个链接库叫做 lib,一个可执行文件叫做 app, 那么您的文件目录应该类似以下结构: - project - .gitignore - README.md - LICENCE.md…
废话不多说,直接开始吧. 环境说明 系统环境: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/goo…
本文首发于个人博客https://kezunlin.me/post/4a1427cf/,欢迎阅读! compile gtest on ubuntu 16.04 Guide compile gtest on ubuntu 16.04 compile gtest on windows 10 apt-get sudo apt-get install libgtest-dev cd /usr/src/gtest # only source files compile git clone https://…
gtest github: https://github.com/google/googletest 学习:玩转Google开源C++单元测试框架Google Test系列(gtest)(总) 一.安装 1.gtest不是传统的unix安装模式(./configure; make; make install)2.进入 ${GTEST_DIR} g++ -isystem include -I./ -pthread -c src/gtest-all.cc ar -rv libgtest.a gtes…
参考 CMake 入门实战 在 linux 平台下使用 CMake 生成 Makefile 并编译的流程如下: 编写 CMake 配置文件 CMakeLists.txt . 执行命令 cmake PATH 或者 ccmake PATH 生成 Makefile(ccmake 和 cmake 的区别在于前者提供了一个交互式的界面).其中, PATH 是 CMakeLists.txt 所在的目录. 使用 make 命令进行编译. 本文将从实例入手,一步步讲解 CMake 的常见用法,文中所有的实例代码…
本来是打算写一篇年终总结,随便和以往一样提一提自己的开源项目(长不大的plain framework)的一些进度,不过最近这一年对于这个项目实在是维护不多,实在难以用它作为醒目的标题.而最近由于使用了VS2022,微软居然自动识别了项目中的cmake(看来我是很久没有使用这个工具了),于是在想方设法将这个项目做到可以在windows平台上尽快提供编译支持,其中遇到了许多有关的技术问题,我觉得可以在这里为大家提供一定的借鉴,特别是自己想要拥有快速编写项目的技巧.分享虽然微不足道,但是也希望大家在此…
1 GoogleTest源码编译: GoogleTest代码仓库URL: https://github.com/google/googletest.git 下载源代码: git clone --branch release-1.12.1 https://github.com/google/googletest.git googletest 1.1 Windows下GoogleTest的编译方法(包含example): 这里选择的编译器是Visual Studio 16 2019,需要用别的版本的…
gMock是什么 当我们去写测试时,有些测试对象很单纯简单,例如一个函数完全不依赖于其他的对象,那么就只需要验证其输入输出是否符合预期即可. 但是如果测试对象很复杂或者依赖于其他的对象呢?例如一个函数中需要访问数据库或者消息队列,那么要想按照之前的思路去测试就必须创建好数据库和消息队列的客户端实例,然后放在该函数内使用.很多时候这种操作是很麻烦的,此时Mock Object就能帮助我们解决这个问题.一个Mock Object实现与真实对象相同的接口,它可以替代真实对象去使用,而我们要做的就是制定…
公司引擎是用cmake根据目标平台来构建工程的,刚接触的时候深深体会到cmake的方便:如果目标平台是windows,它可以帮你自动构建出vs工程:如果是安卓,自动构建出eclipse工程,如果是IOS,自动构建出xcode工程.想想以前用vs建工程的时候,如果要引入第三方库,必须要手动配置第三方库路径,如果引入的库少,那还没什么,如果多的话就悲剧了,配个环境都要半天.再想想以前在linux平台下手动写Makefile的时候,如果工程比较小,模块少还好办,如果工程大,模块多,各种写依赖关系都要让…
之前一个月都在学习googletest框架,对googletest的文档都翻译了一遍,也都发在了之前的博客里,另外其实还有一部分的文档我没有发,就是GMock的CookBook部分:https://github.com/google/googletest/blob/master/googlemock/docs/CookBook.md.这部分我也翻译了,也写了很多代码,但是这部分文档太长了,很难看完,除非是真用到里边的内容才会去里面找,所以就不在这浪费笔墨,如果有想要的可以在下边评论.截了个图:…
使用CMake编译跨平台静态库 http://www.tuicool.com/articles/3uu2Yj cmake命令 安装.用法简介 https://fukun.org/archives/0421949.html cmake使用一 -- cmake语法 http://blog.csdn.net/kaizi318/article/details/7721660 CMake的使用 http://www.cppblog.com/tx7do/archive/2010/08/19/124000.h…
C++开发者必备技能CMake  先简单介绍一下,CMake是一个跨平台的编译工具,它可以根据不用的平台,不同的编译环境,生成不同的MakeFile,从而控制编译的过程. 使用CMake的步骤: 1.ccmake directory     //配置编译选项,这个命令不太常用,所以没有深入了解   2.cmake directory      //这个目录是CMkaeLists.txt所在的目录,用于生成MakeFile文件,实际使用首先要执行这个命令生成MakeFile,才能进行下一步编译工作…
对于一些已经解决的问题,本博客不再讨论.只将本人遇到的问题做简单的说明. 一.VS 2013编译64位版本QT 4.8.6 QT项目官网中,对于QT4,其只提供了windows X86的版本,并且支持VS2010及以下版本. 如果我们的开发环境是VS2010以上版本,使用QT4.8.6-VS2010库来进行开发的话,将会在编译的时候提示缺少msvcpxxx.dll等一系列缺少dll文件的错误,即使我们下载好了MS VC runtime.(以开发环境为VS2013,并使用QT4.8.6-VS201…
cmake 找不到package,如 find_package (OpenMesh REQUIRED) 出现错误 在项目的文件夹中找到 FindOpenMesh.cmake 文件,将其所在路径添加到 CMakeLists.txt 文件中 find_package (OpenMesh REQUIRED) 的前面,让cmake找到package即可. 如: list (APPEND CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/../.././cmake) 实际只要修改…
最近公司要我学习Google的测试框架google test:https://github.com/google/googletest. GoogleTest是C++的测试框架,我一个学习Java的,开头好难啊.查了好多,才编译成功.总结下,帮助后来人,基本上比我查到的详细. 1.下载googletest: https://github.com/google/googletest 2.以VS为例,在VS中导入msvc/gtest.sln,然后重新编译,debug.release两个模式都要编译.…
http://www.cmake.org/Wiki/CMake_Cross_Compiling…
查看官方文档 cmake命令 选项 CMake变量 CMake命令汇总 / add_custom_command add_custom_target/add_definitions/add_dependencies add_library/add_subdirectory/add_test/aux_source_directory/break build_command/cmake_minimum_required/cmake_policy configure_file/create_test_…
<CMake实践>笔记一:PROJECT/MESSAGE/ADD_EXECUTABLE <CMake实践>笔记二:INSTALL/CMAKE_INSTALL_PREFIX <CMake实践>笔记三:构建静态库与动态库 及 如何使用外部共享库和头文件 前言: 开发了5,6年的时间,如果没有KDE4,也许不会有人或者Linux发行版本重视cmake,因为除了Kitware似乎没有人使用它.通过KDE4的选型和开发,cmake逐渐进入了人们的视线,在实际的使用过程中,cmak…
<CMake实践>笔记一:PROJECT/MESSAGE/ADD_EXECUTABLE <CMake实践>笔记二:INSTALL/CMAKE_INSTALL_PREFIX <CMake实践>笔记三:构建静态库与动态库 及 如何使用外部共享库和头文件 四.更好一点的Hello World 没有最好,只有更好 从本小节开始,后面所有的构建我们都将采用 out-of-source 外部构建,约定的构建目录是工程目录下的build自录. 本小节的任务是让前面的Hello Wor…
<CMake实践>笔记一:PROJECT/MESSAGE/ADD_EXECUTABLE <CMake实践>笔记二:INSTALL/CMAKE_INSTALL_PREFIX <CMake实践>笔记三:构建静态库与动态库 及 如何使用外部共享库和头文件 五.静态库与动态库构建 读者云,太能罗唆了,一个Hello World就折腾了两个大节.OK,从本节开始,我们不再折腾Hello World了,我们来折腾Hello World的共享库. 本节的任务: 1.建立一个静态库和动…
1.cmake安装 2.codeblock  16.01 3.Google Test 1.7.0 4.PATH路径添加(重启电脑,保证设置的PATH路径生效) 5.python安装 6.编译安装:  http://www.cnblogs.com/TenosDoIt/p/3412721.html 错误: ||=== Build: Debug in d (compiler: GNU GCC Compiler) ===| D:\source\googletest-release-1.7.0\inclu…