CUnit-2.1-3在Linux系统上的安装[引用]
文章出处:
http://blog.csdn.net/bbwang8088/article/details/70139405?locationNum=9&fps=1
1 下载CUnit安装包CUnit-2.1-3.tar.bz2保存至/home/用户/
(安装包版本为文章做成时2016-05-25的最新版本)
https://sourceforge.NET/projects/cunit
2 解压缩安装包
tar jxvf CUnit-2.1-3.tar.bz2
3 进入解压后的文件夹CUnit-2.1-3
cd CUnit-2.1-3
4 执行make,分别执行以下命令
aclocal
autoheader
autoconf
automake
如果在automake过程中有文件丢失,则执行下面命令:
automake --add-missing
再次执行automake
如果出现错误:configure.in:161:required file './ltmain.sh' not found,则执行下面的命令:
libtoolize --automake --copy --debug --force
执行完上述步骤以后,查看是否生成了configure,如果有,则执行:
./configure
执行完上述步骤以后,查看是否生成了Makefile,如果有,则执行:
make
安装编译出的库:
sudo make install
查看是否已经安装成功:
ls /usr/local/lib/libcunit.so
5 样例代码做成
5.1 CUnit官网上的样例代码拷贝并保存至/home/用户/test下面,记为test.c
http://cunit.sourceforge.net/example.html
5.2 编译t.c
gcc -o t t.c -lcunit
5.3 运行t
./t
5.4正常运行的话会产生以下结果画面
6 生成测试代码覆盖率报告
6.1 重新编译t.c
gcc -fprofile-arcs -ftest-coverage -o t t.c -lcunit
6.2 运行t
./t
6.3 生成覆盖率数据中间文件
gcov t.c
6.4 生成xml形式的覆盖率报告文件至app.info文件
lcov --directory . --capture --output-file app.info
6.5 生成html形式的覆盖率报告文件至results文件夹,数据来源文件为app.info
genhtml -o results app.info
6.6 正常的话会生成下述的html页面
when facing with problem:./cunit_testing: error while loading shared libraries: libcunit.so.1: cannot open shared object file: No such file or directory
you can fix if by doing this:
说明找不到库libcunit.so.1,这时需要在/etc/ld.so.conf文件中加一行:/usr/local/lib/,是libcunit.so.1所在的目录,然后执行命令#ldconfig,详见文章ld.so.conf 和 pkgconf。