不折腾好环境不学习系列 Linux(1)—— 学习 CMakeLists写法 并在 gcov/lcov 上运用

一、过程(以后补)

二、结果

    1. CMakeLists.txt

cmake_minimum_required(VERSION 3.2)    #1.cmake verson,指定cmake版本 

PROJECT(p_test)     #2.project name,指定项目的名称,一般和项目的文件夹名称对应 

set(CMAKE_CXX_STANDARD 14)

set(BOOST_ROOT "/usr/include/boost") #指定 Boost 库路径

set(CMAKE_CXX_FLAGS "-g -O0 -Wall -fprofile-arcs -ftest-coverage")   #添加编译参数,普适!

set(CMAKE_CXX_OUTPUT_EXTENSION_REPLACE 1)     #添加头文件搜索路径

include_directories(/usr/include)             #头文件目录

INCLUDE_DIRECTORIES( include )         #源文件目录

AUX_SOURCE_DIRECTORY(src DIR_SRCS)

 ADD_EXECUTABLE(p_test ${DIR_SRCS})    #添加要编译的可执行文件

target_link_libraries(p_test boost_program_options)#在这里根据名字boost_program_options去寻找libboost_program_options.a文件,普适!   

    这部分的知识推荐看一看博文 Cmake知识----编写CMakeLists.txt文件编译C/C++程序 或者 《跟我一起写Makefile-陈皓》

    2. 具体使用 GCOV/LCOV

project > cmake .

project > make

project > ./p_test

project > cd CMakeFiles/p_test.dir/src    #p_test为project name

project/CMakeFiles/p_test.dir/src > gcov p_test.gcno

project/CMakeFiles/p_test.dir/src > lcov --capture --directory . --output-file parser_coverage.info

project/CMakeFiles/p_test.dir/src > genhtml parser_coverage.info --output-directory out

    最后生成的 index.html 在 project/CMakeFiles/p_test.dir/src 还深处的一个目录下,哎呀忘了,但是又不想打开虚拟机🙄,相信大家能很快找到哒!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容