다음을 통해 공유


/Yl(디버그 라이브러리에 PCH 참조 넣기)

/Yl 옵션은 미리 컴파일된 헤더 파일에서 고유 기호를 생성하고 이 기호에 대한 참조는 미리 컴파일된 헤더를 사용하는 모든 개체 파일에 삽입됩니다.

구문

/Yl
/Yl이름
/Yl-

인수

이름
고유 기호의 일부로 사용되는 선택적 이름입니다.

-
대시(-)는 /Yl 컴파일러 옵션을 명시적으로 사용하지 않도록 설정합니다.

설명

/Yl 컴파일러 옵션은 /Yc 옵션을 사용하여 미리 컴파일된 헤더 파일에 고유한 기호 정의를 만듭니다. 이 기호에 대한 참조는 /Yu 컴파일러 옵션을 사용하여 미리 컴파일된 헤더를 포함하는 모든 파일에 자동으로 삽입됩니다. /Yl 옵션은 /Yc를 사용하여 미리 컴파일된 헤더 파일을 만들 때 기본적으로 사용하도록 설정됩니다.

/Yl이름 옵션은 미리 컴파일된 헤더 파일에서 식별 가능한 기호를 만드는 데 사용됩니다. 컴파일러는 이름 인수를 만드는 __@@_PchSym_@00@...@name데코레이팅된 기호 이름의 일부로 사용합니다. 여기서 줄임표(...)는 고유한 컴파일러 생성 문자열을 나타냅니다. 이름 인수를 생략하면 컴파일러는 기호 이름을 자동으로 생성합니다. 일반적으로 기호의 이름을 알 필요가 없습니다. 그러나 프로젝트에서 미리 컴파일된 헤더 파일을 둘 이상 사용하는 경우 /Yl이름 옵션은 미리 컴파일된 헤더를 사용하는 개체 파일을 결정하는 데 유용할 수 있습니다. 이름을 검색 문자열로 사용하여 덤프 파일에서 기호 참조를 찾을 수 있습니다.

/Yl- 기본 동작을 사용하지 않도록 설정하고 미리 컴파일된 헤더 파일에 식별 기호를 넣지 않습니다. 미리 컴파일된 이 헤더를 포함하는 컴파일된 파일은 공통 기호 참조를 얻지 않습니다.

/Yc를 지정하지 않으면 /Yl 옵션이 적용되지 않지만 지정된 경우 /Yc를 지정할 때 전달된 /Yl 옵션과 일치해야 합니다.

/Yl-, /Yc/Z7 옵션을 사용하여 미리 컴파일된 헤더 파일을 빌드하는 경우 디버깅 정보는 별도의 .pdb 파일이 아니라 미리 컴파일된 헤더를 만드는 데 사용되는 원본 파일의 개체 파일에 저장됩니다. 이 개체 파일이 라이브러리 의 일부로 만들어지면 미리 컴파일된 헤더 파일을 만드는 데 사용된 원본 파일이 기호 자체를 정의하지 않는 경우 이 라이브러리 및 미리 컴파일된 헤더 파일을 사용하는 빌드에서 오류 또는 LNK4206 경고가 LNK1211 발생할 수 있습니다. 라이브러리 클라이언트에서 개체 파일의 아무 것도 참조되지 않을 때 링커는 연결된 디버깅 정보와 함께 링크에서 개체 파일을 제외할 수 있습니다. 이 문제를 해결하려면 /Yc를 사용하여 미리 컴파일된 헤더 파일을 만들 때 /Yl을 지정하거나 /Yl-옵션을 제거합니다. 이렇게 하면 디버깅 정보가 포함된 라이브러리의 개체 파일이 빌드에 연결됩니다.

미리 컴파일된 헤더에 대한 자세한 내용은 다음을 참조하세요.

Visual Studio 개발 환경에서 이 컴파일러 옵션을 설정하려면

  1. 프로젝트의 속성 페이지 대화 상자를 엽니다. 자세한 내용은 Visual Studio에서 C++ 컴파일러 및 빌드 속성 설정을 참조하세요.

  2. 구성 속성>C/C++>명령줄 속성 페이지를 선택합니다.

  3. 추가 옵션 상자에 /Yl이름 컴파일러 옵션을 추가합니다. 확인을 선택하여 변경 내용을 저장합니다.

프로그래밍 방식으로 이 컴파일러 옵션을 설정하려면

참고 항목

MSVC 컴파일러 옵션
MSVC 컴파일러 명령줄 구문