

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Téléchargez et configurez le code de la bibliothèque C\+\+ Producer
<a name="producersdk-cpp-download"></a>

Pour plus d'informations sur le téléchargement et la configuration de la bibliothèque de production C\+\+, consultez [Amazon Kinesis Video Streams CPP Producer, GStreamer](https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp) Plugin et JNI.

Pour les prérequis et plus d'informations sur cet exemple, consultez[Utiliser la bibliothèque de production C\+\+](producer-sdk-cpp.md).

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

Vous trouverez ci-dessous un tableau de référence pour les arguments SDK-specific CMake du producteur C\+\+. Vous pouvez également transmettre les [options standard de CMake](https://cmake.org/cmake/help/latest/manual/cmake-env-variables.7.html) à CMake.

**Important**  
Elles sont toutes facultatives.

**Drapeaux pour inclure ou exclure certaines fonctionnalités**


| Argument CMake | Type | Par défaut | Explication | 
| --- | --- | --- | --- | 
| `BUILD_DEPENDENCIES` | Booléen | ON | Créez des dépendances à partir de la source. Dans le cas contraire, utilisez les dépendances déjà installées sur le système. Si l'une des dépendances requises est introuvable, une erreur sera renvoyée. | 
| `BUILD_GSTREAMER_PLUGIN` | Booléen | OFF | Construit le plugin kvssink GStreamer. | 
| `BUILD_JNI` | Booléen | OFF | Construit l'interface native Java (JNI) pour pouvoir appeler ce code depuis un environnement d'exécution Java. | 
| `ALIGNED_MEMORY_MODEL` | Booléen | OFF | Si les allocations de mémoire doivent être alignées sur des limites de 8 octets. Certaines architectures n'autorisent pas l'accès à la mémoire non aligné. | 
| `CONSTRAINED_DEVICE` | Booléen | OFF | Non-Windows uniquement. Lorsque cette option est activée, définit la taille de la pile de threads sur0.5 MiB. Nécessaire pour les versions d'[Alpine Linux](https://wiki.alpinelinux.org/wiki/Main_Page). Dans le cas contraire, c'est le système d'exploitation par défaut qui est utilisé. | 
| `BUILD_STATIC` | Booléen | OFF | Créez des bibliothèques et des exécutables [partagés](https://en.wikipedia.org/wiki/Shared_library) (OFF) ou [statiques](https://en.wikipedia.org/wiki/Static_library) (ON). | 
| `ADD_MUCLIBC` | Booléen | OFF | Lien vers [UClibc](https://en.wikipedia.org/wiki/UClibc) au lieu de la bibliothèque C standard, qui est une bibliothèque standard C plus petite conçue pour les systèmes embarqués. | 
| `OPEN_SRC_INSTALL_PREFIX` | String | .. /ouvert/ source/local | Emplacement où installer les dépendances open source, si vous créez à partir des sources. | 

**Drapeaux pour la compilation croisée**

**Important**  
Définissez ces paramètres si les architectures de processeur de votre machine cible et de votre machine hôte sont différentes.


| Argument CMake | Type | Par défaut | Explication | 
| --- | --- | --- | --- | 
| `BUILD_LOG4CPLUS_HOST` | String | "" | Créez la log4cplus dépendance pour l'architecture de processeur spécifiée. S'il n'est pas défini, log4cplus il détectera automatiquement et utilisera l'architecture du processeur de la machine hôte. | 
| `BUILD_OPENSSL_PLATFORM` | String | "" | Créez la OpenSSL dépendance pour l'architecture de processeur spécifiée. S'il n'est pas défini, OpenSSL il détectera automatiquement et utilisera l'architecture du processeur de la machine hôte. | 

**Drapeaux liés aux tests**


| Argument CMake | Type | Par défaut | Explication | 
| --- | --- | --- | --- | 
| `BUILD_TEST` | Booléen | OFF | Créez les tests unitaires et d'intégration. Pour exécuter tous les tests, exécutez-les ./tst/producerTest depuis le répertoire de construction. AWS Des informations d'identification sont nécessaires pour exécuter les tests. | 
| `CODE_COVERAGE` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Activez la collecte de la couverture du code avec [gcov et la génération](https://gcc.gnu.org/onlinedocs/gcc/Gcov.html) de rapports. | 
| `COMPILER_WARNINGS` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Activez tous les avertissements du compilateur. | 
| `ADDRESS_SANITIZER` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Construisez avec [AddressSanitizer](https://compiler-rt.llvm.org/). | 
| `MEMORY_SANITIZER` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Construisez avec [MemorySanitizer](https://compiler-rt.llvm.org/). | 
| `THREAD_SANITIZER` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Construisez avec [ThreadSanitizer](https://compiler-rt.llvm.org/). | 
| `UNDEFINED_BEHAVIOR_SANITIZER` | Booléen | OFF | Disponible uniquement pour les GNU/Clang compilateurs. Construisez avec [UndefinedBehaviorSanitizer](https://compiler-rt.llvm.org/). | 

Pour utiliser ces arguments CMake, transmettez-les sous forme de liste de `-D{{key}}={{value}}` paires séparées par des espaces après la commande. `cmake ..` Par exemple :

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

CMake recherchera la chaîne d'outils du compilateur en suivant la `$PATH` variable. Avant d'exécuter CMake, définissez les variables d'`CXX`environnement `CC` et pour définir explicitement la chaîne d'outils à utiliser pour la compilation croisée.