Maison >développement back-end >C++ >Comment lier correctement std :: thread dans GCC avec pthread ?

Comment lier correctement std :: thread dans GCC avec pthread ?

Barbara Streisand
Barbara Streisandoriginal
2024-12-02 20:08:11303parcourir

How to Correctly Link std::thread in GCC with pthread?

Options de lien correct pour std::thread dans GCC

Dans GCC sous Linux, std::thread utilise pthread pour son implémentation. Pour utiliser avec succès std::thread, il est crucial de spécifier les options de lien appropriées lors de la compilation.

Problème de compilation et solution

L'exemple de code fourni rencontre une erreur car le La bibliothèque pthread nécessaire n'est pas liée. Pour résoudre ce problème, ajoutez l'indicateur de liaison -pthread après le fichier source lors de la compilation :

$ g++ -std=c++0x test.cpp -pthread

Ordre des options

Notez que les options de l'éditeur de liens doivent être placées après les fichiers sources lors de la compilation. En effet, le compilateur traite d'abord le code source, puis l'éditeur de liens finalise le binaire en résolvant toutes les dépendances nécessaires.

Exemple

La commande de compilation corrigée serait :

$ g++ -std=c++0x test.cpp -pthread

En suivant ces conseils, vous pouvez lier correctement votre utilisation de std::thread dans GCC sous Linux, permettant ainsi à votre code multithread à exécuter comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn