本文介绍了gcov不生成gcda文件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我试着用 -fprofile-arcs
& -ftest-coverage
并且没有任何链接。
I tried to run gcov with -fprofile-arcs
& -ftest-coverage
and nothing for linking.
它给出了这个错误: -
It was giving this error:-
hidden symbol `__gcov_init' in /home/mojave/tools/gcc-4.4.1/amd64/bin/../lib/gcc/x86_64-unknown-linux-gnu/4.4.1/libgcov.a(_gcov.o) is referenced by DSO
和程序出口。
编译命令 -
bsub -g /mojave/build/"DummyDate" -J compile-obj/linux24rhel3_x86_64_GCOV64/DXp.o -I -q DFM -S 8192 -R "(model==OPTERON_250)" '/usr/bin/time --format=" ...finished DXp [`hostname`] [%E s with %P CPU]" /home/mojave/tools/gcc-4.4.1/amd64/bin/g++ -fPIC -Wall -Wno-deprecated -DTCL_8_5 -m64 -march=opteron -DLITTLE_ENDIAN_PLATFORM -DARCH=amd64 -DARCH_amd64 -DARCH_BITS=64 -DARCH_BITS_64 -fsigned-char -msse3 -D__DISABLE_MULTITHREAD__ -D_CPP_NUMERIC_LIMITS -mfpmath=sse,387 -mmmx -m3dnow -pipe -Dgcc -DLICENSE_ALWAYS_GOOD -I/home/mojave/tools/flexlm/include/v8.4 -DNO_SUPPORT_STABIE -DGCOV -I../dxpclient -I/home/mojave/tools/bzip2-1.0.2/amd64/include -I/home/mojave/tools/zlib-1.2.3/amd64/include -I/home/mojave/tools/tcltk8.5.2/amd64//include -I/home/mojave/tools/tcltk8.5.2/amd64//include -g -fprofile-arcs -ftest-coverage -DBUILD_DATE=\""UNSET"\" -DVERSION_NUMBER=\"Dum.Dum.Dum.Dummy\" -DEXT_VERSION_NUMBER=\"Dum.Dum.Dum.Dummy\" -DLAST_RELEASE_VERSION=\"1.1614\" -Wreturn-type -DTCL_8_5 -DGOOGLE_MALLOC -L../dx/linux24rhel3_x86_64_GCOV64/ -ldx -o obj/linux24rhel3_x86_64_GCOV64/DXp obj/linux24rhel3_x86_64_GCOV64/DXp.o -Wl -lgcov /home/mojave/tools/zlib-1.2.3/amd64/lib/libz.a -L/home/mojave/tools/bzip2-1.0.2/amd64/lib -lbz2 -ldl'
感谢您的投票。
谢谢。
推荐答案
-fprofile-arcs
和 -ftest-coverage
。在生成共享对象期间与 -lgcov
链接。它可以工作。
Compile with -fprofile-arcs
and -ftest-coverage
. Link with -lgcov
during the generation of shared object. It will work.
您也可以使用 - coverage
选项作为所有三个步骤的同义词
Also you may use --coverage
option as synonym for all three steps
请看:以获取更多信息
这篇关于gcov不生成gcda文件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!