현재 Windows 및 Linux에서 단일 명령 줄 도구를 사용하여 제품을 구축하고 있습니다.여러 PDB 파일을 병합하는 방법은 무엇입니까?
Si는 이전의 빌드 시스템에서 허용 한 것보다 더 근원적으로 더 세밀하게 의존 할 수있게 해줍니다. 이것은 우리에게 점진적이고 병렬적인 빌드 기능을 제공합니다.
곧 빌드 프로세스를 설명하기 위해, 우리는 평소 얻을 :
.cpp -- cl.exe --> .obj and .pdb
multiple .obj and .pdb -- cl.exe --> single .dll .lib .pdb
multiple .obj and .pdb -- cl.exe --> single .exe .pdb
MSVC C/C++ 컴파일러가 적절를 지원합니다.
최근 정적 라이브러리를 몇 개 만들 필요가 생겼습니다. 우리가 수집 한 바로는, 정적 라이브러리를 구축하는 프로세스는 다음과 같습니다
multiple .cpp -- cl.exe --> multiple .obj and a single .pdb
multiple .obj -- lib.exe --> a single .lib
단 하나의 .pdb는 cl.exe
는 모든 .CPP 소스에 대해 한 번 실행되어야한다는 것을 의미한다. 이 단일 실행은이 정적 라이브러리의 빌드를 병렬화 할 수 없음을 의미합니다. 이것은 정말로 불행합니다.
우리는 문서 (사용 가능한 명령 행 옵션)에 추가하고 따라 약간의 조사 :
cl.exe
정적 라이브러리 을 구축하는 방법을 알고하지 않습니다
lib.exe
의 .pdb를 구축하는 방법을 알고하지 않습니다 파일
누구나 여러 PDB 파일을 병합하는 방법을 알고 있습니까? 우리는 정적 라이브러리를위한 느린 빌드를 갖게 될까? Incredibuild와 같은 도구가이 문제를 해결하려면 어떻게해야합니까?
항상 솔리드 스테이트 드라이브에 코드를 넣을 수 있습니다. 빌드가 번개처럼 빠르게 진행됩니다. –
나는 내 스타일 북의 솔리드 스테이트 드라이브에있다. 도움이 되긴하지만 링크는 IO 바운드이며 컴파일은 CPU 바운드입니다. –