

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 빌드를 위한 CMake 파라미터 AWS SDK for C\+\+
<a name="cmake-params"></a>

이 섹션에 나열된 [CMake](https://cmake.org/) 파라미터를 사용하여 SDK 빌드 방식을 사용자 지정합니다.

이러한 옵션은 CMake GUI 도구를 사용하거나 명령줄에서 *-D*를 사용하여 설정할 수 있습니다. 예를 들면 다음과 같습니다.

```
cmake -DENABLE_UNITY_BUILD=ON -DREGENERATE_CLIENTS=1
```

## 일반 CMake 변수 및 옵션
<a name="cmake-general-options"></a>

다음은 SDK 소스 코드의 빌드 프로세스에 영향을 미치는 일반 **`cmake`** 변수 및 옵션입니다.

**참고**  
이러한 파라미터는 SDK for C\+\+ 자체의 소스 코드를 빌드할 때 사용합니다.

**Topics**
+ [ADD\_CUSTOM\_CLIENTS](#cmake-add-custom-clients)
+ [AUTORUN\_UNIT\_TESTS](#cmake-AUTORUN_UNIT_TESTS)
+ [AWS\_AUTORUN\_LD\_LIBRARY\_PATH](#cmake-AWS_AUTORUN_LD_LIBRARY_PATH)
+ [AWS\_SDK\_WARNINGS\_ARE\_ERRORS](#cmake-AWS_SDK_WARNINGS_ARE_ERRORS)
+ [AWS\_USE\_CRYPTO\_SHARED\_LIBS](#cmake-use-crypto)
+ [AWS\_TEST\_REGION](#cmake-AWS_TEST_REGION)
+ [BUILD\_BENCHMARKS](#cmake-BUILD_BENCHMARKS)
+ [BUILD\_DEPS](#cmake-BUILD_DEPS)
+ [BUILD\_ONLY](#cmake-build-only)
+ [BUILD\_OPTEL](#cmake-BUILD_OPTEL)
+ [BUILD\_SHARED\_LIBS](#cmake-build-shared-libs)
+ [BYPASS\_DEFAULT\_PROXY](#cmake-BYPASS_DEFAULT_PROXY)
+ [CPP\_STANDARD](#cmake-cpp-standard)
+ [CURL\_INCLUDE\_DIR](#cmake-curl-include-dir)
+ [CURL\_LIBRARY](#cmake-curl-library)
+ [CUSTOM\_MEMORY\_MANAGEMENT](#cmake-custom-memory-management)
+ [DISABLE\_INTERNAL\_IMDSV1\_CALLS](#cmake-DISABLE_INTERNAL_IMDSV1_CALLS)
+ [ENABLE\_ADDRESS\_SANITIZER](#cmake-ENABLE_ADDRESS_SANITIZER)
+ [ENABLE\_CURL\_LOGGING](#cmake-enable-curl-logging)
+ [ENABLE\_HTTP\_CLIENT\_TESTING](#cmake-ENABLE_HTTP_CLIENT_TESTING)
+ [ENABLE\_RTTI](#cmake-enable-rtti)
+ [ENABLE\_TESTING](#cmake-enable-testing)
+ [ENABLE\_UNITY\_BUILD](#cmake-enable-unity-build)
+ [ENABLE\_VIRTUAL\_OPERATIONS](#cmake-virtual-op)
+ [ENABLE\_ZLIB\_REQUEST\_COMPRESSION](#cmake-ENABLE_ZLIB_REQUEST_COMPRESSION)
+ [FORCE\_CURL](#cmake-force-curl)
+ [FORCE\_SHARED\_CRT](#cmake-force-shared-crt)
+ [G](#cmake-g)
+ [MINIMIZE\_SIZE](#cmake-minimize-size)
+ [NO\_ENCRYPTION](#cmake-no-encryption)
+ [NO\_HTTP\_CLIENT](#cmake-no-http-client)
+ [REGENERATE\_CLIENTS](#cmake-regenerate-clients)
+ [REGENERATE\_DEFAULTS](#cmake-regenerate-defaults)
+ [SIMPLE\_INSTALL](#cmake-simple-install)
+ [TARGET\_ARCH](#cmake-target-arch)
+ [USE\_CRT\_HTTP\_CLIENT](#cmake-USE_CRT_HTTP_CLIENT)
+ [USE\_IXML\_HTTP\_REQUEST\_2](#cmake-USE_IXML_HTTP_REQUEST_2)
+ [USE\_OPENSSL](#cmake-use-openssl)
+ [USE\_TLS\_V1\_2](#cmake-USE_TLS_V1_2)
+ [USE\_TLS\_V1\_3](#cmake-USE_TLS_V1_3)

### ADD\_CUSTOM\_CLIENTS
<a name="cmake-add-custom-clients"></a>

API 정의를 기반으로 임의의 클라이언트를 빌드합니다. 정의를 `code-generation/api-definitions` 폴더에 배치한 후 이 인수를 **`cmake`**에 전달하세요. **`cmake`** 성 단계에서 클라이언트를 생성하여 빌드에 하위 디렉터리로 포함시킵니다. 이는 특히 [API Gateway](https://aws.amazon.com/api-gateway) 서비스 중 하나를 사용하기 위해 C\+\+ 클라이언트를 생성할 때 유용합니다. 예제:

```
-DADD_CUSTOM_CLIENTS="serviceName=myCustomService,version=2015-12-21;serviceName=someOtherService,version=2015-08-15"
```

**참고**  
`ADD_CUSTOM_CLIENTS` 파라미터를 사용하려면 [Python 2.7](https://www.python.org/downloads/), Java([JDK 1.8 이상](http://openjdk.java.net/install/)) 및 [Maven](https://maven.apache.org/)이 설치되어 있고 `PATH`에 포함되어 있어야 합니다.

### AUTORUN\_UNIT\_TESTS
<a name="cmake-AUTORUN_UNIT_TESTS"></a>

`ON`인 경우 빌드 후 단위 테스트를 자동으로 실행합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### AWS\_AUTORUN\_LD\_LIBRARY\_PATH
<a name="cmake-AWS_AUTORUN_LD_LIBRARY_PATH"></a>

CMake로 자동 실행되는 유닛 테스트를 위해 LD\_LIBRARY\_PATH에 추가할 경로입니다. 재정의된 종속성에 사용자 지정 런타임 라이브러리가 필요한 경우에 이 경로를 설정합니다.

값  
 *문자열입니다.*

기본값  
 *해당 사항 없음* 

### AWS\_SDK\_WARNINGS\_ARE\_ERRORS
<a name="cmake-AWS_SDK_WARNINGS_ARE_ERRORS"></a>

`ON`인 경우 컴파일러 경고를 오류로 처리합니다. 새 컴파일러나 흔하지 않은 컴파일러에서 오류가 관찰되는 경우 이를 `OFF`로 설정해 보세요.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### AWS\_USE\_CRYPTO\_SHARED\_LIBS
<a name="cmake-use-crypto"></a>

FindCrypto가 공유 암호화 라이브러리를 사용하도록 강제합니다(해당 라이브러리가 발견된 경우). 대신 [BUILD\_SHARED\_LIBS](#cmake-build-shared-libs) 설정을 사용하려면 이 옵션을 `OFF`로 설정합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### AWS\_TEST\_REGION
<a name="cmake-AWS_TEST_REGION"></a>

통합 테스트 AWS 리전 에 사용할 입니다.

값  
 *문자열입니다.*

기본값  
 *해당 사항 없음* 

### BUILD\_BENCHMARKS
<a name="cmake-BUILD_BENCHMARKS"></a>

`ON`인 경우 벤치마크 실행 파일을 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### BUILD\_DEPS
<a name="cmake-BUILD_DEPS"></a>

`ON`인 경우 타사 종속성을 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### BUILD\_ONLY
<a name="cmake-build-only"></a>

사용할 클라이언트만 빌드합니다. `aws-cpp-sdk-transfer`와 같은 상위 수준 SDK로 설정된 경우 *BUILD\_ONLY*는 하위 수준 클라이언트 종속성을 모두 확인합니다. 또한 선택한 프로젝트와 관련된 통합 및 유닛 테스트가 있는 경우, 이들도 빌드합니다. 이는 세미콜론(`;`) 문자로 값이 구분된 목록 인수입니다. 예제:

```
-DBUILD_ONLY="s3;cognito-identity"
```

**참고**  
핵심 SDK 모듈인 `aws-sdk-cpp-core`는 *BUILD\_ONLY* 매개변수의 값과 상관없이 *항상* 빌드됩니다.

### BUILD\_OPTEL
<a name="cmake-BUILD_OPTEL"></a>

`ON`인 경우 추적을 위한 오픈 텔레메트리 구현을 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### BUILD\_SHARED\_LIBS
<a name="cmake-build-shared-libs"></a>

기본 제공 CMake 옵션으로, 가시성을 위해 여기에 재표시됩니다. `ON`인 경우 공유 라이브러리를 빌드하며, 그렇지 않은 경우 정적 라이브러리만 빌드합니다.

**참고**  
SDK에 동적으로 연결하려면 SDK를 사용하여 모든 빌드 대상에 대해 `USE_IMPORT_EXPORT` 기호를 정의해야 합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### BYPASS\_DEFAULT\_PROXY
<a name="cmake-BYPASS_DEFAULT_PROXY"></a>

`ON`인 경우 IXmlHttpRequest2를 사용할 때 시스템의 기본 프록시 설정을 우회합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### CPP\_STANDARD
<a name="cmake-cpp-standard"></a>

C\+\+ 14 및 17 코드 베이스와 함께 사용할 사용자 지정 C\+\+ 표준을 지정합니다.

값  
 *11* \| *14* \| *17* 

기본값  
 *11* 

### CURL\_INCLUDE\_DIR
<a name="cmake-curl-include-dir"></a>

`libcurl` 헤더가 포함된 curl include 디렉터리의 경로입니다.

값  
 *선택한 `include` 디렉터리의 문자열 경로입니다. *예:`D:/path/to/dir/with/curl/include` 

기본값  
 *해당 사항 없음* 

### CURL\_LIBRARY
<a name="cmake-curl-library"></a>

연결할 curl 라이브러리 파일의 경로입니다. 이 라이브러리는 애플리케이션의 요구 사항에 따라 정적 라이브러리 또는 가져오기 라이브러리일 수 있습니다.

값  
 *curl 라이브러리 파일의 문자열 경로. 예: `D:/path/to/static/libcur/file/ie/libcurl.lib.a`.*

기본값  
 *해당 사항 없음* 

### CUSTOM\_MEMORY\_MANAGEMENT
<a name="cmake-custom-memory-management"></a>

사용자 지정 메모리 관리자를 사용하려면 값을 `1`로 설정합니다. 모든 STL 유형에 사용자 지정 할당 인터페이스를 사용하도록 사용자 지정 할당기를 설치할 수 있습니다. 값을 `0`으로 설정하더라도 Windows에서 DLL 안전성을 위해 STL 템플릿 유형을 계속 사용할 수 있습니다.

정적 연결이 `ON`인 경우 사용자 지정 메모리 관리는 기본적으로 **off(`0`)로 설정됩니다. 동적 연결이 `ON`인 경우 사용자 지정 메모리 관리는 기본적으로 **on(`1`)으로 설정되며 교차 DLL 할당 및 할당 해제가 방지됩니다.

**참고**  
링커 불일치 오류를 방지하려면 빌드 시스템 전체에서 동일한 값(`0` 또는 `1`)을 사용해야 합니다.

SDK에서 수행한 할당을 처리할 자체 메모리 관리자를 설치하려면 SDK에 의존하는 모든 빌드 대상에 대해 `-DCUSTOM_MEMORY_MANAGEMENT`를 설정하고 `USE_AWS_MEMORY_MANAGEMENT`를 정의해야 합니다.

### DISABLE\_INTERNAL\_IMDSV1\_CALLS
<a name="cmake-DISABLE_INTERNAL_IMDSV1_CALLS"></a>

`ON`인 경우 [인스턴스 메타데이터 서비스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/ec2-instance-metadata.html)의 V1 API에 대한 내부 직접 호출이 수행되지 않습니다. `OFF`인 경우 IMDSv2 호출이 실패하면 IMDSv2 직접 호출이 IMDSv1 사용으로 대체됩니다. IMDSv1 및 IMDSv2에 대한 자세한 내용은 *Amazon EC2 사용 설명서*에서 [인스턴스 메타데이터 서비스를 사용하여 인스턴스 메타데이터에 액세스](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/configuring-instance-metadata-service.html)를 참조하세요.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### ENABLE\_ADDRESS\_SANITIZER
<a name="cmake-ENABLE_ADDRESS_SANITIZER"></a>

`ON`인 경우 gcc 또는 clang에 대해 Address Sanitizer를 켭니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### ENABLE\_CURL\_LOGGING
<a name="cmake-enable-curl-logging"></a>

`ON`인 경우 curl의 내부 로그를 SDK 로거로 파이프 처리합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### ENABLE\_HTTP\_CLIENT\_TESTING
<a name="cmake-ENABLE_HTTP_CLIENT_TESTING"></a>

`ON`인 경우 해당 HTTP 클라이언트 테스트 제품군을 빌드하고 실행합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### ENABLE\_RTTI
<a name="cmake-enable-rtti"></a>

런타임 유형 정보(RTTI)를 활성화하도록 SDK를 빌드할지 여부를 제어합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ENABLE\_TESTING
<a name="cmake-enable-testing"></a>

SDK 빌드 중 유닛 테스트 및 통합 테스트 프로젝트를 빌드할지 여부를 제어합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ENABLE\_UNITY\_BUILD
<a name="cmake-enable-unity-build"></a>

`ON`인 경우 대부분의 SDK 라이브러리는 하나의 생성된 `.cpp` 파일로 빌드됩니다. 이렇게 하면 정적 라이브러리 크기가 상당히 줄어들고 컴파일 시간이 단축될 수 있습니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### ENABLE\_VIRTUAL\_OPERATIONS
<a name="cmake-virtual-op"></a>

이 파라미터는 일반적으로 코드 생성을 위해 `REGENERATE_CLIENTS`와 함께 작동합니다.

`ENABLE_VIRTUAL_OPERATIONS`가 `ON`이고 `REGENERATE_CLIENTS`가 `ON`인 경우 서비스 클라이언트의 작업 관련 함수는 `virtual`로 표시됩니다.

`ENABLE_VIRTUAL_OPERATIONS`가 `OFF`이고 `REGENERATE_CLIENTS`가 인 `ON`경우 `virtual`는 작업 함수에 추가되지 않으며 서비스 클라이언트 클래스는 `final`로 표시됩니다.

`ENABLE_VIRTUAL_OPERATIONS`가 `OFF`인 경우 SDK는 컴파일 시 gcc 및 clang에 대해 `-ffunction-sections` 및 `-fdata-sections` 컴파일러 플래그도 추가합니다.

자세한 내용은 GitHub의 [CMake 파라미터](https://github.com/aws/aws-sdk-cpp/blob/main/docs/CMake_Parameters.md#enable_virtual_operations)를 참조하세요.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ENABLE\_ZLIB\_REQUEST\_COMPRESSION
<a name="cmake-ENABLE_ZLIB_REQUEST_COMPRESSION"></a>

해당 기능을 지원하는 서비스의 경우 요청된 콘텐츠가 압축됩니다. 종속성이 사용 가능한 경우 기본적으로 활성화됩니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### FORCE\_CURL
<a name="cmake-force-curl"></a>

Windows에만 해당됩니다. `ON`인 경우 기본 [WinHTTP](https://msdn.microsoft.com/en-us/library/windows/desktop/aa382925%28v=vs.85%29.aspx) 데이터 전송 공급자 대신 curl 클라이언트를 강제로 사용합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### FORCE\_SHARED\_CRT
<a name="cmake-force-shared-crt"></a>

`ON`인 경우 SDK는 C 런타임에 *동적으로* 연결되며, 그렇지 않은 경우 *BUILD\_SHARED\_LIBS* 설정(이전 SDK 버전과의 이전 버전 호환성을 위해 필요한 경우가 있음)을 사용합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### G
<a name="cmake-g"></a>

Visual Studio 솔루션 및 Xcode 프로젝트 등의 빌드 아티팩트를 생성합니다.

Windows 예:

```
-G "Visual Studio 12 Win64"
```

자세한 내용은 해당 플랫폼의 CMake 설명서를 참조하세요.

### MINIMIZE\_SIZE
<a name="cmake-minimize-size"></a>

[ENABLE\_UNITY\_BUILD](#cmake-enable-unity-build)의 상위 집합입니다. `ON`인 경우 이 옵션은 *ENABLE\_UNITY\_BUILD* 및 추가 바이너리 크기 축소 설정을 활성화합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### NO\_ENCRYPTION
<a name="cmake-no-encryption"></a>

`ON`인 경우 기본 플랫폼별 암호화 구현이 라이브러리에 내장되지 않도록 합니다. 이 기능을 *ON*으로 설정하면 자체 암호화 구현을 주입할 수 있습니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### NO\_HTTP\_CLIENT
<a name="cmake-no-http-client"></a>

`ON`인 경우 기본 플랫폼별 HTTP 클라이언트가 라이브러리에 내장되지 않도록 합니다. *ON*인 경우 자체 플랫폼별 HTTP 클라이언트 구현을 제공해야 합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### REGENERATE\_CLIENTS
<a name="cmake-regenerate-clients"></a>

`ON`인 경우 이 파라미터는 생성된 코드를 모두 삭제하고 `code-generation/api-definitions` 폴더에서 클라이언트 디렉터리를 생성합니다. 예제:

```
-DREGENERATE_CLIENTS=1
```

**참고**  
`REGENERATE_CLIENTS` 파라미터를 사용하려면 [Python 2.7](https://www.python.org/downloads/), Java([JDK 1.8 이상](http://openjdk.java.net/install/)) 및 [Maven](https://maven.apache.org/)이 설치되어 있고 `PATH`에 포함되어 있어야 합니다.

### REGENERATE\_DEFAULTS
<a name="cmake-regenerate-defaults"></a>

`ON`인 경우 이 파라미터는 생성된 기본 코드를 모두 삭제하고 `code-generation/defaults` 폴더에서 다시 생성합니다. 예제:

```
-DREGENERATE_DEFAULTS=1
```

**참고**  
`REGENERATE_DEFAULTS` 파라미터를 사용하려면 [Python 2.7](https://www.python.org/downloads/), Java([JDK 1.8 이상](http://openjdk.java.net/install/)) 및 [Maven](https://maven.apache.org/)이 설치되어 있고 `PATH`에 포함되어 있어야 합니다.

### SIMPLE\_INSTALL
<a name="cmake-simple-install"></a>

`ON`인 경우 설치 프로세스 중 `bin/` 및 `lib/` 아래에 플랫폼별 중간 디렉터리가 생성되지 않습니다. 단일 설치 디렉터리에서 다중 플랫폼 릴리스를 수행해야 하는 경우 `OFF`로 설정합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### TARGET\_ARCH
<a name="cmake-target-arch"></a>

모바일 플랫폼용으로 교차 컴파일하거나 빌드하려면 대상 플랫폼을 지정해야 합니다. 기본적으로 빌드는 호스트 운영 체제를 감지하여 감지된 운영 체제용으로 빌드합니다.

**참고**  
*TARGET\_ARCH*가 *ANDROID*인 경우 추가 옵션을 사용할 수 있습니다. [Android CMake 변수 및 옵션](#cmake-android-variables)을 참조하세요.

값  
 *WINDOWS* \| *LINUX* \| *APPLE* \| *ANDROID* 

### USE\_CRT\_HTTP\_CLIENT
<a name="cmake-USE_CRT_HTTP_CLIENT"></a>

`ON`인 경우 공통 런타임 HTTP 클라이언트가 사용되며, WinHttp 및 libcurl과 같은 레거시 시스템은 빌드되거나 포함되지 않습니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### USE\_IXML\_HTTP\_REQUEST\_2
<a name="cmake-USE_IXML_HTTP_REQUEST_2"></a>

Windows에만 해당됩니다. `ON`인 경우 HTTP 스택에 com 객체 IXmlHttpRequest2를 사용합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### USE\_OPENSSL
<a name="cmake-use-openssl"></a>

`ON`인 경우 SDK는 OpenSSL을 사용하여 빌드합니다. 그렇지 않으면를 사용합니다[https://github.com/awslabs/aws-lc](https://github.com/awslabs/aws-lc). `AWS-LC`는 AWS 및 고객을 위해 AWS 암호화 팀이 유지 관리하는 범용 암호화 라이브러리입니다. 이 파라미터를 `OFF`로 설정하면 시스템 기본 디렉터리에 OpenSSL 대신 `AWS-LC`가 설치됩니다. 시스템에 이미 OpenSSL이 설치되어 있는 경우에는 사용하지 마세요.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### USE\_TLS\_V1\_2
<a name="cmake-USE_TLS_V1_2"></a>

`ON`인 경우 HTTP 클라이언트에서 TLS 1.2를 적용합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### USE\_TLS\_V1\_3
<a name="cmake-USE_TLS_V1_3"></a>

`ON`인 경우 HTTP 클라이언트에서 TLS 1.3을 적용합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

## Android CMake 변수 및 옵션
<a name="cmake-android-variables"></a>

SDK의 Android 빌드를 생성하는 경우([TARGET\_ARCH](#cmake-target-arch)가 *ANDROID*로 설정된 경우) 다음 변수를 사용합니다.

**Topics**
+ [ANDROID\_ABI](#cmake-android-abi)
+ [ANDROID\_BUILD\_CURL](#cmake-ANDROID_BUILD_CURL)
+ [ANDROID\_BUILD\_OPENSSL](#cmake-ANDROID_BUILD_OPENSSL)
+ [ANDROID\_BUILD\_ZLIB](#cmake-ANDROID_BUILD_ZLIB)
+ [ANDROID\_NATIVE\_API\_LEVEL](#cmake-android-native-api-level)
+ [ANDROID\_STL](#cmake-android-stl)
+ [ANDROID\_TOOLCHAIN\_NAME](#cmake-android-toolchain-name)
+ [DISABLE\_ANDROID\_STANDALONE\_BUILD](#cmake-disable-android-standalone-build)
+ [NDK\_DIR](#cmake-ndk-dir)

### ANDROID\_ABI
<a name="cmake-android-abi"></a>

Android에만 해당됩니다. 코드를 출력할 Application Binary Interface(ABI)를 제어합니다.

**참고**  
모든 유효한 Android ABI 값이 현재 지원되는 것은 아닙니다.

값  
 *arm64* \| *armeabi-v7a* \| *x86\_64* \| *x86* \| *mips64* \| *mips* 

기본값  
 *armeabi-v7a* 

### ANDROID\_BUILD\_CURL
<a name="cmake-ANDROID_BUILD_CURL"></a>

Android에만 해당됩니다. `ON`인 경우 curl도 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ANDROID\_BUILD\_OPENSSL
<a name="cmake-ANDROID_BUILD_OPENSSL"></a>

Android에만 해당됩니다. `ON`인 경우 Openssl도 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ANDROID\_BUILD\_ZLIB
<a name="cmake-ANDROID_BUILD_ZLIB"></a>

Android에만 해당됩니다. `ON`인 경우 Zlib도 빌드합니다.

값  
 *ON* \| *OFF* 

기본값  
 *ON* 

### ANDROID\_NATIVE\_API\_LEVEL
<a name="cmake-android-native-api-level"></a>

Android에만 해당됩니다. SDK가 빌드될 때 사용될 API 수준을 제어합니다. [ANDROID\_STL](#cmake-android-stl)을 *gnustl*로 설정한 경우 모든 API 수준을 선택할 수 있습니다. *libc\+\+*를 사용하는 경우 최소 *21* 이상의 API 수준을 사용해야 합니다.

기본값  
선택한 STL에 따라 다릅니다.

### ANDROID\_STL
<a name="cmake-android-stl"></a>

Android에만 해당됩니다. SDK에서 사용하는 C\+\+ 표준 라이브러리의 종류를 제어합니다.

**중요**  
`gnustl` 옵션을 사용하는 경우 SDK 내에서 성능 문제가 발생할 수 있습니다. *libc\+\+\_shared* 또는 *libc\+\+\_static*을 사용하는 것이 좋습니다.

값  
 *libc\+\+\_shared* \| *libc\+\+\_static* \| *gnustl\_shared* \| *gnustl\_static* 

기본값  
 *libc\+\+\_shared* 

### ANDROID\_TOOLCHAIN\_NAME
<a name="cmake-android-toolchain-name"></a>

Android에만 해당됩니다. SDK 빌드에 사용되는 컴파일러를 제어합니다.

**참고**  
Android NDK에서 GCC가 더 이상 권장되지 않으므로 기본값을 사용하는 것이 좋습니다.

기본값  
 *standalone-clang* 

### DISABLE\_ANDROID\_STANDALONE\_BUILD
<a name="cmake-disable-android-standalone-build"></a>

Android에만 해당됩니다. 기본적으로 Android 빌드는 NDK 스크립트를 통해 구성된 독립형 clang 기반 도구 체인을 사용합니다. 자체 도구 체인을 사용하려면 이 옵션을 *ON*으로 설정합니다.

값  
 *ON* \| *OFF* 

기본값  
 *끄기* 

### NDK\_DIR
<a name="cmake-ndk-dir"></a>

Android에만 해당됩니다. 빌드 시스템이 Android NDK를 찾을 때 사용할 재정의 경로를 지정합니다. 기본적으로 빌드 시스템은 이 변수가 설정되지 않은 경우 환경 변수(`ANDROID_NDK`)를 확인합니다.