gcov-tool은 Ubuntu용 gcc 표준 패키지의 일부라고 생각합니다. 불행히도 RHEL의 경우에는 그렇지 않습니다.
gcov-tool을 설치하기 위한 RHEL 패키지 이름을 찾는 데 성공하지 못했습니다. 아는 사람 있나요?
gcov-tool(gcc 및 기타 개발 도구와 동일한 버전이 있음)을 설치하려면 터미널에 무엇을 작성해야 합니까?
모든 개발 도구( ) 설치를 시도했는데 yum group install "Development Tools"
성공적으로 설치되었으나 gcov-tool
설치되지 않았습니다.
다음은 gcov-tool이 필요한 다음 RHEL 버전 목록입니다: rhel6.6-x86_64 rhel6.7-x86_64 rhel6.8-x86_64 rhel6.9-x86_64 rhel7.0-x86_64 rhel7.1-x86_64 rhel7.2-x86_64 rhel7.3-x86_64 rhel7.3-x86_64 rhel7.4-x86_64 rhel7.5-x86_64 rhel7.6-x86_64
답변1
devtoolset
다음 패키지 중 하나를 설치 해야 합니다 yum
. devtoolset-8
최신 버전이고 우분투에서 사용할 수 있기 때문에 추천합니다 . 이 중 하나가 마음에 든다면 그것도 가질 수 있습니다 devtoolset-6
.devtoolset-7
먼저 rhel-server-rhscl-7-rpms
저장소가 활성화되어 있는지 확인하십시오. 다음을 모두 활성화할 수 있습니다.
subscription-manager repos --enable rhel*
그 후 다음을 설치하십시오 devtoolset-8
.
yum install devtoolset-8*
그런 다음 devtoolset의 gcc를 환경에 추가합니다.
scl enable devtoolset-8 bash
gcov-tool
그러면 사용 가능한 항목을 확인할 수 있습니다 .
which gcov-tool
위치는 입니다 /opt/rh/devtoolset-8/root/usr/bin
.
그것을 얻는 또 다른 방법 gcov-tool
은 소스에서 빌드하는 것이지만 gcc
이것은 훨씬 더 복잡합니다.
답변2
이 솔루션을 찾는 사람들은 실제로 여러 소스에서 하나의 보고서를 얻을 수 있는 방법이 필요할 수 있습니다.
그들은 다음 문제에 직면했습니다:
- 다양한 운영 체제에서 도구를 구현하려면 다양한 단계가 필요합니다.
- *.gcda는 다른 운영 체제 또는 컴파일러 버전에서 병합될 수 없는 경우가 있습니다.
- 병합을 실행하는 머신은 바이너리가 컴파일된 머신과 동일하지 않을 수 있으며(이로 인해 gcda가 호환되지 않음) 운영 체제도 동일하지 않을 수도 있습니다.
따라서 이를 달성하는 일반적인 방법은 *.gcda를 마크업 텍스트 형식(예: html 또는 xml)으로 변환한 다음 위치와 운영 체제에 관계없이 기존 도구 중 하나를 사용하여 이러한 보고서를 병합하는 것입니다.
이는 위의 질문에 대한 답변은 아니지만 위의 문제를 겪은 모든 사람에게 이 아이디어가 도움이 될 수 있습니다.
장점: 바이너리 차이점과 OS 관련 도구를 잊어버리게 됩니다.
단점: *.gcda 세트의 크기는 XML 표현 크기보다 20-50배 작습니다.