

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# Baixe e configure o código da biblioteca do produtor C\$1\$1
<a name="producersdk-cpp-download"></a>

Para obter informações sobre como baixar e configurar a biblioteca de produtores de C\$1\$1, consulte [Amazon Kinesis Video Streams CPP](https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp) Producer, Plugin and JNI. GStreamer 

Para obter os pré-requisitos e obter mais informações sobre esse exemplo, consulte. [Use a biblioteca de produtores de C\$1\$1](producer-sdk-cpp.md)

## CMake argumentos
<a name="cmake-arguments"></a>

Abaixo está uma tabela de referência para os argumentos específicos do C\$1\$1 Producer SDK CMake . Você também pode passar as [ CMake opções padrão](https://cmake.org/cmake/help/latest/manual/cmake-env-variables.7.html) para CMake .

**Importante**  
Tudo isso é opcional.

**Sinalizadores para incluir ou excluir determinados recursos**


| CMake discussão | Tipo | Padrão | Explicação | 
| --- | --- | --- | --- | 
| `BUILD_DEPENDENCIES` |  Booleano  |  ON  | Crie dependências a partir da fonte. Caso contrário, use as dependências que já estão instaladas no sistema. Se uma das dependências necessárias não puder ser encontrada, um erro será retornado. | 
| `BUILD_GSTREAMER_PLUGIN` | Booleano |  DESL.  | Constrói o kvssink GStreamer plugin. | 
|  `BUILD_JNI`  | Booleano |  DESL.  | Cria a Java Native Interface (JNI) para poder chamar esse código a partir de um ambiente de execução Java. | 
|  `ALIGNED_MEMORY_MODEL`  | Booleano |  DESL.  | Se as alocações de memória precisarem ser alinhadas aos limites de 8 bytes. Algumas arquiteturas não permitem acesso desalinhado à memória. | 
| `CONSTRAINED_DEVICE` | Booleano |  DESL.  | Somente fora do Windows. Quando ATIVADO, define o tamanho da pilha de fios como0.5 MiB. Necessário para compilações [do Alpine Linux](https://wiki.alpinelinux.org/wiki/Main_Page). Caso contrário, o padrão do sistema operacional será usado. | 
|  `BUILD_STATIC`  | Booleano |  DESL.  | Crie bibliotecas e executáveis como [compartilhados](https://en.wikipedia.org/wiki/Shared_library) (DESLIGADOS) ou [estáticos](https://en.wikipedia.org/wiki/Static_library) (ATIVADOS). | 
|  `ADD_MUCLIBC`  | Booleano |  DESL.  | Vincule ao [uClibc](https://en.wikipedia.org/wiki/UClibc) em vez da biblioteca C padrão, que é uma biblioteca padrão C menor projetada para sistemas embarcados. | 
|  `OPEN_SRC_INSTALL_PREFIX`  |  String  | .. /código aberto/local | Local para instalar as dependências de código aberto, se estiver compilando a partir do código-fonte. | 

**Sinalizadores para compilação cruzada**

**Importante**  
Defina-os se as arquiteturas de CPU da máquina de destino e da máquina host forem diferentes.


| CMake discussão | Tipo | Padrão | Explicação | 
| --- | --- | --- | --- | 
| `BUILD_LOG4CPLUS_HOST` |  String  |  ""  | Crie a log4cplus dependência para a arquitetura de CPU especificada. Se não estiver definido, log4cplus detectará automaticamente e usará a arquitetura de CPU da máquina host. | 
| `BUILD_OPENSSL_PLATFORM`  |  String  |  ""  | Crie a OpenSSL dependência para a arquitetura de CPU especificada. Se não estiver definido, OpenSSL detectará automaticamente e usará a arquitetura de CPU da máquina host. | 

**Sinalizadores relacionados a testes**


| CMake discussão | Tipo | Padrão | Explicação | 
| --- | --- | --- | --- | 
| `BUILD_TEST` |  Booleano  |  DESL.  | Crie os testes de unidade e integração. Para executar todos os testes, execute a ./tst/producerTest partir do diretório de compilação. AWS São necessárias credenciais para executar os testes. | 
| `CODE_COVERAGE` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Habilite a coleta de cobertura de código com [gcov e geração](https://gcc.gnu.org/onlinedocs/gcc/Gcov.html) de relatórios. | 
| `COMPILER_WARNINGS` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Ative todos os avisos do compilador. | 
| `ADDRESS_SANITIZER` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Construa com [AddressSanitizer](https://compiler-rt.llvm.org/). | 
| `MEMORY_SANITIZER` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Construa com [MemorySanitizer](https://compiler-rt.llvm.org/). | 
| `THREAD_SANITIZER` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Construa com [ThreadSanitizer](https://compiler-rt.llvm.org/). | 
| `UNDEFINED_BEHAVIOR_SANITIZER` | Booleano | DESL. | Disponível somente para GNU/Clang compiladores. Construa com [UndefinedBehaviorSanitizer](https://compiler-rt.llvm.org/). | 

Para usar esses CMake argumentos, passe-os como uma lista de `-Dkey=value` pares separados por espaços seguindo o `cmake ..` comando. Por exemplo:

```
cmake .. -DBUILD_GSTREAMER_PLUGIN=ON -DBUILD_DEPENDENCIES=OFF -DALIGNED_MEMORY_MODEL=ON 
```

CMake procurará o conjunto de ferramentas do compilador seguindo a `$PATH` variável. Antes de executar CMake, defina as variáveis de `CXX` ambiente `CC` e as variáveis de ambiente para definir explicitamente o conjunto de ferramentas a ser usado na compilação cruzada.