컴파일러에는 /Fd 옵션이 있고 링커에는 /PDB 옵션이 있습니다. /PDB
의 기본값은 $(OutDir)$(TargetName).pdb
이지만 컴파일러 옵션 /Fd
의 기본값은 $(IntDir)vc$(PlatformToolsetVersion).pdb
입니다. 따라서 빌드하는 동안 두 개의 파일이 생성됩니다. 설명서에 따르면 프로그램 데이터베이스 파일과 둘 다 디버그 정보와 관련이 있습니다. 두 파일의 차이점은 무엇입니까?/PDB와/Fd 옵션의 차이점
0
A
답변
1
VCxxx.pdb 파일은 주로 정적 라이브러리 프로젝트에 필요합니다. 라이브러리에 대한 디버그 정보를 저장합니다. 링커는 디버거가 사용하는 최종 PDB 파일을 생성 할 때이를 필요로하며 최종 이미지에 링크 된 실제 함수에 대한 관련 디버그 정보 레코드를 선택합니다.
다른 것들도 마찬가지입니다. 어둡고, 의존성 정보를 제공한다고 생각합니다. VS2015 Update 1부터 사용할 수있는/Debug : FASTLINK 옵션으로 더 복잡해졌습니다. 이제는 런타임에 디버그 정보도 제공합니다. 디버거가 VCxxx.pdb 파일을 파내는 데 더 많은 시간을 할애하여 대규모 프로젝트의 경우 비용이 많이 드는 완전한 PDB를 생성하려는 노력이 필요합니다. 거의 항상 승리./Fd를 무시할 좋은 이유를 찾지 못했지만 항상 기본 빌드 옵션을 선호했습니다.
관련 문제
- 1. -p와 -q 옵션의 차이점
- 2. GCC와 Clang 최적화 옵션의 차이점
- 3. 간단한 proguard 유지 옵션의 차이점
- 4. grep의 두 재귀 옵션의 차이점
- 5. Xcode의 파일 추가 옵션의 차이점
- 6. 클라이언트/서버 JVM 옵션의 차이점
- 7. Ruby Mongo 드라이버의 timeout과 connect_timeout 옵션의 차이점
- 8. javac의 클래스 경로와 소스 경로 옵션의 차이점
- 9. ADMIN 옵션과 Oracle의 GRANT 옵션의 차이점
- 10. 'connect_timeout'과 'timeout'의 차이점
- 11. 이전 옵션의 데이터를 현재 옵션의 선택 및 데이터에서 가져옵니다.
- 12. highcharts 시리즈 옵션의 문제점
- 13. 포트폴리오 옵션의 배경색 변경
- 14. 옵션의 헤드 검색 중
- 15. GCC에서 -c 옵션의 기능
- 16. 정렬 옵션의 순서가 잘못되었습니다.
- 17. C - printf와 옵션의 행동
- 18. 옵션의 값을 변경하는 방법
- 19. 각 옵션의 의미는 무엇입니까?
- 20. mysql 옵션의 사용법 --unbuffered
- 21. homesource에서 옵션의 의미는 무엇입니까?
- 22. 선택 옵션의 너비 설정
- 23. JVM 옵션의 전체 목록
- 24. 모델 옵션의 목적은 무엇입니까?
- 25. cmake에서 -D 옵션의 간격은
- 26. 일부 옵션의 기본값
- 27. 옵션의 Combobox 기본값
- 28. 선택한 옵션의 내용보기
- 29. 옵션의 작업 스크립트 레이아웃
- 30. 옵션의 맛 내기