Bonsoir,
Je travaille sous Dev C++ 4.9.9.2 et je rencontre actuellement un petit souci avec l'utilisation de mutex dans des threads (j'utilise SDL, aussi). J'ai déjà fouillé sur les discussions qui avaient déjà été lancées mais elles n'apportent pas tout à fait la réponse à mon problème.
En gros, j'ai une classe principale APPLICATION qui lance plusieurs threads. Afin de pouvoir communiquer entre threads, j'ai aussi mis des files dans ma classe APPLICATION par lesquelles transitent des messages. En très simplifié, le code de ma classe ressemble à ça :
À chaque accès à ma file communication, j'ai décidé de verrouiller à l'aide d'un mutex (monMutex).
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 class APPLICATION { private: SDL_Thread* monThread; static SDL_mutex* monMutex; static queue<MESSAGE> communication; public: static int fonctionThread(void* data); }
Lorsque je compile tout ça, j'obtiens une série d'erreur undefined reference.... Je fais donc un tour du côté de l'éditeur de liens et m'empresse d'ajouter la ligne -lSDL_mutex. Visiblement, ce n'est pas ça puisque j'obtiens l'erreur cannot find -lSDL_mutex.
Savez-vous quelle librairie je suis censé importer pour ne plus avoir d'undefined reference ? (si c'est ça mon problème...).
Jusqu'à présent, lorsque j'utilisais de nouveaux outils, je me référais au web pour connaître la ligne qu'il est parfois nécessaire d'ajouter à l'éditeur de lien pour faire fonctionner certains objets. J'aurai aussi voulu savoir comment on fait pour connaître exactement quelle ligne ajouter à l'éditeur de liens lors d'undefined reference ? (j'ai fouillé plus ou moins dans les répertoires mais rien trouvé).
Merci d'avance pour vos réponses...
Partager