ClangCompile 작업
참고 항목
이 작업은 C++ 빌드 시스템을 사용하는 경우에만 사용할 수 있습니다.
Microsoft C++ 컴파일러 도구 clang.exe를 래핑합니다.
매개 변수
다음 표에서는 ClangCompile 작업의 매개 변수에 대해 설명합니다.
매개 변수 | 설명 |
---|---|
AdditionalIncludeDirectories | 선택적 string[] 매개 변수입니다. 포함 경로에 추가할 디렉터리를 하나 이상 지정합니다. 항목이 여러 개일 때에는 세미콜론으로 구분합니다. -I[path] 을 사용합니다. |
AdditionalOptions | 선택적 string 매개 변수입니다. |
BufferSecurityCheck | 선택적 string 매개 변수입니다. 보안 검사를 통해 스택 버퍼 오버런, 프로그램의 보안에 대해 일반적으로 시도되는 공격을 검색할 수 있습니다. fstack-protector 을 사용합니다. |
BuildingInIde | 선택적 bool 매개 변수입니다. |
CLanguageStandard | 선택적 string 매개 변수입니다. C 언어 표준을 결정합니다. 값이 c89, c99, c11, gnu99 또는 gnu11인 std=[value] 를 사용합니다. |
ClangVersion | 선택적 string 매개 변수입니다. |
CompileAs | 선택적 string 매개 변수입니다. .c 및 .cpp 파일에 대한 컴파일 언어 옵션을 선택합니다. 기본값은 .c 또는 .cpp 확장을 기반으로 검색됩니다. -x c , -x c++ 를 사용합니다. |
CppLanguageStandard | 선택적 string 매개 변수입니다. C++ 언어 표준을 결정합니다. 값이 c++98, c++11, c++1y, gnu++98, gnu++11 또는 gnu++1y인 std=[value] 를 사용합니다. |
DataLevelLinking | 선택적 bool 매개 변수입니다. 링커 최적화를 사용하면 별도 섹션에서 각 데이터 항목을 내보내 사용하지 않은 데이터를 제거할 수 있습니다. |
DebugInformationFormat | 선택적 string 매개 변수입니다. 컴파일러에서 생성되는 디버깅 정보 형식을 지정합니다. None - 디버깅 정보를 생성하지 않으므로 컴파일이 더 빨라질 수 있습니다( g0 사용).FullDebug - DWARF2 디버그 정보를 생성합니다( g2 -gdwarf-2 사용).LineNumber - 줄 번호 정보만 생성합니다( gline-tables-only 사용). |
EnableNeonCodegen | 선택적 bool 매개 변수입니다. NEON 부동 소수점 하드웨어에 대한 코드 생성을 사용하도록 설정합니다. 이는 arm 아키텍처에만 적용됩니다. |
ExceptionHandling | 선택적 string 매개 변수입니다. 컴파일러가 사용하는 예외 처리 모델을 지정합니다. Disabled - 예외 처리를 사용하지 않도록 설정합니다( fno-exceptions 사용).Enabled - 예외 처리를 사용하도록 설정합니다( fexceptions 사용).UnwindTables - 필요한 정적 데이터를 생성하지만 생성된 코드에는 영향을 주지 않습니다( funwind-tables 사용). |
FloatABI | 선택적 string 매개 변수입니다. 부동 소수점 ABI를 선택할 수 있는 선택 옵션입니다. soft - 컴파일러가 부동 소수점 연산에 대한 라이브러리 호출이 포함된 출력을 생성하도록 합니다( mfloat-abi=soft 사용).softfp - 하드웨어 부동 소수점 명령을 사용하는 코드 생성을 허용하지만 계속해서 soft-float 호출 규칙을 사용합니다( mfloat-abi=softfp 사용).hard - 부동 소수점 명령의 생성을 허용하고 FPU 관련 호출 규칙을 사용합니다( mfloat-abi=hard 사용). |
ForcedIncludeFiles | 선택적 string[] 매개 변수입니다. 하나 이상의 강제 포함 파일입니다. -include [name] 을 사용합니다. |
FunctionLevelLinking | 선택적 bool 매개 변수입니다. 컴파일러가 개별 함수를 패키지된 함수(COMDAT)의 형태로 패키지할 수 있게 합니다. 편집에 필요하며 계속 작동합니다. ffunction-sections 을 사용합니다. |
GccToolChain | 선택적 string 매개 변수입니다. Gcc 도구 체인에 대한 폴더 경로입니다. |
GNUMode | 선택적 bool 매개 변수입니다. |
MSCompatibility | 선택적 bool 매개 변수입니다. 완전한 Microsoft C++ 호환성을 사용합니다. |
MSCompatibilityVersion | 선택적 string 매개 변수입니다. _MSC_VER에서 보고할 Microsoft 컴파일러 버전 번호를 나타내는 점으로 구분된 값입니다(0 = 정의하지 않음(기본값)). |
MSExtensions | 선택적 bool 매개 변수입니다. Microsoft 컴파일러에서 지원하는 일부 비표준 구문을 허용합니다. |
MSCompilerVersion | 선택적 string 매개 변수입니다. _MSC_VER에서 보고할 Microsoft 컴파일러 버전 번호입니다(0 = 정의하지 않음(기본값)). |
MSVCErrorReport | 선택적 bool 매개 변수입니다. Visual Studio에서 파일 및 줄 정보의 구문 분석에 사용할 수 있는 오류를 보고합니다. |
ObjectFileName | 선택적 string 매개 변수입니다. 기본 개체 파일 이름을 재정의할 이름을 지정합니다. 파일 또는 디렉터리 이름일 수 있습니다. /Fo[name] 을 사용합니다. |
OmitFramePointers | 선택적 bool 매개 변수입니다. 호출 스택에서 프레임 포인터를 생성하지 않습니다. |
최적화 | 선택적 string 매개 변수입니다. 애플리케이션의 최적화 수준을 지정합니다. Custom - 사용자 지정 최적화입니다. Disabled - 최적화를 사용하지 않도록 설정합니다( O0 사용).MinSize - 크기에 맞게 최적화합니다( Os 사용).MaxSpeed - 속도에 맞게 최적화합니다( O2 사용).Full - 고가의 최적화입니다( O3 사용). |
PositionIndependentCode | 선택적 bool 매개 변수입니다. 공유 라이브러리에서 사용할 PIC(위치 독립적 코드)를 생성합니다. |
PrecompiledHeader | 선택적 string 매개 변수입니다. 빌드하는 동안 미리 컴파일된 헤더를 만들거나 사용하도록 설정합니다. |
PrecompiledHeaderFile | 선택적 string 매개 변수입니다. 미리 컴파일된 헤더 파일에 사용할 헤더 파일 이름을 지정합니다. 이 파일은 빌드 중에 강제 포함 파일에도 추가됩니다. |
PrecompiledHeaderOutputFileDirectory | 선택적 string 매개 변수입니다. 생성된 미리 컴파일된 헤더에 대한 디렉터리를 지정합니다. 이 디렉터리는 빌드 중에 추가 포함 디렉터리에도 추가됩니다. |
PrecompiledHeaderCompileAs | 선택적 string 매개 변수입니다. 미리 컴파일된 헤더 파일에 대한 컴파일 언어 옵션을 선택합니다. -x c-header , -x c++-header 를 사용합니다. |
PreprocessorDefinitions | 선택적 string[] 매개 변수입니다. 원본 파일에 대한 전처리 기호를 정의합니다. -D 을 사용합니다. |
RuntimeLibrary | 선택적 string 매개 변수입니다. 링크할 런타임 라이브러리를 지정합니다. MSVC /MT , /MTd , /MD , /MDd 스위치를 사용합니다.MultiThreaded - 애플리케이션에서 런타임 라이브러리의 다중 스레드 정적 버전을 사용하게 됩니다. MultiThreadedDebug - _DEBUG 및 _MT를 정의합니다. 또한, 이 옵션은 컴파일러가 .obj 파일에 라이브러리 이름 LIBCMTD.lib를 배치하여 링커가 LIBCMTD.lib를 사용하여 외부 기호를 확인하도록 만듭니다. MultiThreadedDLL - 애플리케이션에서 런타임 라이브러리의 다중 스레드별 및 DLL별 버전을 사용하게 됩니다. _MT 및 _DLL을 정의하고 컴파일러가 라이브러리 이름 MSVCRT.lib를 .obj 파일에 배치하게 만듭니다. MultiThreadedDebugDLL - _DEBUG, _MT 및 _DLL을 정의하고 애플리케이션에서 런타임 라이브러리의 디버그 다중 스레드별 및 DLL별 버전을 사용하게 됩니다. 또한 컴파일러가 라이브러리 이름 MSVCRTD.lib를 .obj 파일에 배치하게 만듭니다. |
RuntimeTypeInfo | 선택적 bool 매개 변수입니다. 런타임에 C++ 개체의 형식(런타임 형식 정보)을 검사하는 코드를 추가합니다. frtti , fno-rtti 를 사용합니다. |
ShowIncludes | 선택적 bool 매개 변수입니다. 컴파일러 출력으로 포함 파일 목록을 생성합니다. -H 을 사용합니다. |
원본 | 필수 ITaskItem[] 매개 변수입니다. |
StrictAliasing | 선택적 bool 매개 변수입니다. 가장 엄격한 앨리어싱 규칙을 가정합니다. 한 형식의 개체는 다른 형식의 개체와 동일한 주소에 있을 수 없는 것으로 간주됩니다. |
Sysroot | 선택적 string 매개 변수입니다. 헤더 및 라이브러리의 루트 디렉터리에 대한 폴더 경로입니다. |
TargetArch | 선택적 string 매개 변수입니다. 대상 아키텍처입니다. |
ThumbMode | 선택적 string 매개 변수입니다. Thumb 마이크로 아키텍처용으로 실행되는 코드를 생성합니다. 이는 arm 아키텍처에만 적용됩니다. Thumb - Thumb 코드를 생성합니다( mthumb 사용).ARM - Arm 코드를 생성합니다( marm 사용).Disabled - 선택한 플랫폼에 적용되지 않는 옵션입니다. |
TrackerLogDirectory | 선택적 string 매개 변수입니다. 추적기 로그 디렉터리입니다. |
TreatWarningAsError | 선택적 bool 매개 변수입니다. 모든 컴파일러 경고를 오류로 처리합니다. 새 프로젝트인 경우 모든 컴파일에서 /WX 를 사용하는 것이 좋습니다. 모든 경고를 해결하면 찾기 어려운 코드 오류를 최소화할 수 있습니다. |
UndefinePreprocessorDefinitions | 선택적 string[] 매개 변수입니다. 전처리기 정의 해제를 하나 이상 지정합니다. -U [macro] 을 사용합니다. |
UndefineAllPreprocessorDefinitions | 선택적 bool 매개 변수입니다. 이전에 정의한 모든 전처리기 값을 정의 해제합니다. -undef 을 사용합니다. |
UseMultiToolTask | 선택적 bool 매개 변수입니다. 다중 프로세서 컴파일입니다. |
UseShortEnums | 선택적 bool 매개 변수입니다. 열거형 형식은 가능한 값의 입력 집합에 필요한 만큼의 바이트만 사용합니다. |
자세한 정보 표시 | 선택적 bool 매개 변수입니다. 실행할 명령을 표시하고 자세한 정보 표시 출력을 사용합니다. |
WarningLevel | 선택적 string 매개 변수입니다. 컴파일러가 코드 오류를 처리하는 수준을 선택합니다. 다른 플래그는 추가 옵션에 직접 추가해야 합니다( /w , /Weverything 참조).TurnOffAllWarnings - 모든 컴파일러 경고를 사용하지 않도록 설정합니다( w 사용).EnableAllWarnings - 기본적으로 사용하지 않도록 설정된 경고를 포함한 모든 경고를 사용하도록 설정합니다( Wall 사용). |