728x90
반응형

gcov 2

연결할 때 정의되지 않은 참조 문제를 해결하는 방법 __gcov_init

이제 C 코드 커버리지 연구를 진행하고 GCC 버전 4.4.6에서 다음 문제가 발생했습니다. 컴파일러 플래그 및 링커 옵션을 추가했거나 오류가 발생했습니다. CFLAGS = --coverageLDFLAGS := --coverageLOCAL_LDLIBS := --coverage undefined reference to '__gcov_init'" and "undefined reference to '__gcov_merge_add' 옵션이 추가되고 링크 오류가 발생했습니다.LOCAL_LDFLAGS := --coverage libgcov.a(_gcov.o): in function __gcov_set_sampling_rate: undefined reference to '__gcov_sampling_rate' lib..

IT/개발 2023.11.11

[소프트웨어 공학]gcov:테스트 커버리지 측정

gcov는 코드 커버리지를 측정하기 위해 사용하는 프로그램입니다. 코드 커버리지에 대한 내용은 여기서 간단하게 알 수 있습니다. gcov는 아래와 같은 것을 알려줍니다. - 각 라인의 코드가 얼마나 자주 실행되었는 지 - 정확히 어떤 라인의 코드가 실행되었는 지 - 특정 부분의 코드를 실행하는 데 얼마나 시간이 걸렸는 지(gprof와 함께) 위와 같은 정보를 활용하여 코드 커버리지를 측정할 수 있는데요, 구체적으로 gcov는 다음과 같이 사용할 수 있습니다. Gcov Usage Flow 1. gcc의 특정 flag와 함께 테스트하고자하는 프로그램을 컴파일 - -fprofile-arcs -ftest-coverage - .gcda , .gcno 파일 생성 2. 테스트하고자 하는 프로그램을 실행 - .gcda..

IT/개발 2023.11.11
728x90
반응형