1、libmodbus的使用
1、重点关注项目下的3个文件夹:doc,src,tests
doc文件夹包含库的使用文档,文件名就是函数名,介绍每个函数的使用方法,参数定制,返回值说明,示例代码等。
src文件夹包含源文件和头文件,我们只需要把这些文件添加到工程中,然后包含头文件就可以直接使用了。
tests文件夹包含libmodbus使用示例。
2、使用autoconf构建makefile文件
./configure CC=gcc CXX=g++ CFLAGS="-g -fprofile-arcs -ftest-coverage"
“-fprofile-arcs -ftest-coverage” 这个参数开启插桩编译。
“Run ./autogen.sh
first to generate the configure
script if required.”
3、执行tests下的测试程序产生 *.gcda 文件
# 生成覆盖率文本报告
lcov -c -d . -o test.info --rc lcov_branch_coverage=1
# 生成覆盖率网页报告
genhtml --branch-coverage -o result test.info
执行命令后,可以看到一个 result 文件夹,在里面就是对应的网页版覆盖率报告。
2、LightFTP
Q:不能生成.gcda覆盖率文件?
A:因为程序没有正常结束,需要输入q来结束程序才行,不可以用ctrl+c。
或者添加信号处理函数。
3、live555
可以使用VLC工具来查看meidia推送的音乐、视频等资源
3、AFLNet报错
内存限制问题:-m none