2012-09-03 10 views
0

lcov를 사용하여 실행 한 일부 테스트 케이스의 코드 적용 범위를 얻으려고했습니다.lcov 문제 출력 파일 생성

그러나 나는 경고를 얻고있다

lcov --directory $PWD --capture --output-file lcov.output 

실행할 때

geninfo : 경고 : .bb 파일에 test.c.gcov에 대한 항목, 파일을 건너 뛰는을 찾을 수 없습니다!

gcov를 test.c에서 직접 실행하면 gcov 출력을 생성 할 수있어 사용률을 성공적으로 보여줍니다.

코드 적용 범위가 새로운 내용입니다. 이 문제를 해결하는 데 도움을 주시면 매우 감사하겠습니다.

답변

1

어떤 시점에서 gcov 형식이 변경되었습니다. 현재 문제는 gcov의 최신 버전에서 소스 파일 이름 등으로 헤더를 생성했기 때문입니다. Lcov는이 헤더를 예상했으며 오류가 발생한이 오류를 추출하려고 시도했습니다.

해결 방법으로, 반환 된 헤더가 비어있는 경우 원본 파일 이름이 gcov 파일 이름에서 직접 간주되도록 LCOV 코드를 수정했습니다. 이 해결책은 gcov 파일이 소스 파일 이름과 다른 이름으로 생성 된 경우 호환되지 않을 수 있으므로 가장 우아하지 않을 수 있습니다.

업데이트 :이 특별한 문제는 lcov-1.8의 버그로 인한 것입니다. lcov-1.10의 버전에는이를위한 수정 사항이 있어야합니다. (http://ltp.cvs.sourceforge.net/viewvc/ltp/utils/analysis/lcov/bin/geninfo?r1=1.106&r2=1.107)