IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques Discussion :

Problème avec l'utilisation de la librairie pthread sur Code Blocks


Sujet :

Bibliothèques

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème avec l'utilisation de la librairie pthread sur Code Blocks
    Bonsoir à tous,

    Je travaille actuellement sur un projet nécessitant l'utilisation des threads sur Code::Blocks 17.12. Or quand je compile, j'obtiens l'erreur suivante :
    pthread.h : no such file or directory

    J'ai essayé plusieurs trucs comme linker la librairie ou quoi mais rien ne change et je suis un peu bloqué je ne trouve pas la solution.

    Quelqu'un aurait-il la solution à mon problème qui je parie est très simple... Je précise que je suis sous Windows.

    Bonne soirée à tous,

    Corentin

  2. #2
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 580
    Points : 7 712
    Points
    7 712
    Par défaut
    Bonjour,

    Mal parié, le problème n'est pas simple. <pthread.h> ça donne l'accès à des threads POSIX et Windows n'est pas POSIX.
    Alors :
    - ou bien tu dois impérativement utiliser <pthread.h> et il te faut alors chercher sur la capacité d'émuler des threads POSIX sous Windows ou d'émuler Linux sous Windows. Je ne sais pas s'il y a des possibilités avec MinGW que tu utilises.
    - sinon si tu es en C++, il te suffit d'utiliser <thread> qui est bien plus simple et plus puissant que <pthread.h>
    - sinon tu peux utiliser les threads Windows qui nécessitent l'include <windows.h>

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2019
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 26
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2019
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Je travaille en C donc je suis obligé d'utiliser la commande <pthread.h>.

    En lisant sur plusieurs forums, on parle que ça pourrait être un problème de librairie qui pourrait être mal linker, qu'en penses-tu ?

    Merci de ta réponse en tout cas.

    Bonne soirée,

    Corentin

  4. #4
    Expert éminent
    Homme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Décembre 2015
    Messages
    1 580
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Décembre 2015
    Messages : 1 580
    Points : 7 712
    Points
    7 712
    Par défaut
    Les threads Windows ne sont pas POSIX, c'est donc plus complexe qu'un problème de bibliothèque.

    Si <pthread.h> ne t'est pas imposé, les threads Windows ayant des différences avec les threads POSIX, les objets de synchronisations sont légèrement différents mais l'idée générale est forcément identique.
    Un exemple de création : beginthreadex().

    Si <pthread.h> est obligatoire, j'ai un peu cherché. MinGW-64 aurait une option compatible, et c'est à l'installation qu'il faut choisir d'avoir les threads POSIX. Il te faut peut-être réinstaller MinGW et prendre impérativement la version MinGW-64.

Discussions similaires

  1. Utiliser le compilateur de Microsoft sur Code::Blocks
    Par Irken dans le forum Code::Blocks
    Réponses: 1
    Dernier message: 09/09/2007, 20h26
  2. Problème avec l'utilisation d'un module
    Par goblin dans le forum Modules
    Réponses: 4
    Dernier message: 09/11/2005, 20h55
  3. Problème avec l'utilisation de librairies
    Par Aradesh dans le forum MFC
    Réponses: 3
    Dernier message: 01/08/2005, 15h00
  4. [debutant] problème avec type à utiliser
    Par mlequim dans le forum Autres SGBD
    Réponses: 2
    Dernier message: 15/07/2005, 16h08
  5. Problème avec l'utilisation de la fonction clock
    Par Matgic95 dans le forum C++Builder
    Réponses: 13
    Dernier message: 09/05/2005, 19h27

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo