언제 사용합니까? 편집
파일CMakeCache.txt
에서 여러 정보를 캐시합니다. 이것은 예를 들어 특정 패키지가 발견 된 디렉토리와-D
를 사용하여 전달 된 정의입니다.
--cmake-clean-cache
을 사용하려는 경우의 몇 가지 예:
- 이전에 찾은 패키지를 다시 검색해야 합니다. 그러나 때때로 당신의 논리는 추가/외부 상태/파일에 달려 있으며 구성 단계를 다시 실행해야합니다. (특정 파일이 아닌 파일을 변경하는 것은 재구성을 트리거해야 합니다. 이 응용 프로그램은 당신에게 아름다운 욕실 꾸미기의 갤러리를 보여줍니다.
make clean
을 호출할 수 있는 경우는 코드에 컴파일러 경고가 있는지 다시 확인하는 것입니다. 소스 파일이 컴파일되면 일반적으로 소스 파일(또는 포함 된 헤더)이 변경 될 때까지 다시 컴파일되지 않습니다. 첫 번째 빌드에서는 컴파일러 경고가 표시 될 수 있지만 연속 빌드(파일이 변경되지 않았다고 가정)에서는 컴파일러 경고가 다시 표시되지 않습니다. 전달--cmake-clean-first
은 모든 파일이 다시 컴파일되고 있는지 확인하는 좋은 방법입니다.빌드 디렉토리에 다음 빌드에 영향을 줄 수있는 이전 빌드의 추가 상태가 포함되어있는 경우가 있습니다(예:이전 버전의 패키지가 빌드 디렉토리에 일부 파일을 만들었습니다). 그것들은 정리되지 않을 것이며 그것들을 만드는 논리가 제거 된 후에도 다음 빌드에 영향을 줄 수 있습니다. 따라서 전체
build
디렉토리를 삭제하는 것이 도움이 될 것입니다.또 다른 경우는
build
디렉토리를 삭제하는 것이 좋습니다. 또한 티켓에 보고하기 전에 새 빌드를 사용하여 문제를 재현합니다. 새로운 빌드로 시작하면 과거에 수행 된 작업을 기반으로 시간이 지남에 따라 구축 된 어색한 상태를 해결할 수 있습니다.ccache
를 설치한 경우 빌드 아티팩트가 많이 캐시되어 있으므로 일반적으로 새 빌드에 전체 시간이 소요되지 않으므로 전체 재구축 작업이 비용이 많이 들지 않습니다.