J'ai un programme simple qui crée et exécute en tant que thread en utilisant des threads boost en C++.Problème avec le programme de base utilisant Boost Threads en C++
#include<boost/thread/thread.hpp>
#include<iostream>
void hello()
{
std::cout<<"Hello, i am a thread"<<std::endl;
}
int main()
{
boost::thread th1(&hello);
th1.join();
}
Le compilateur renvoie une erreur sur la ligne th1.join(). Il dit «
marqueurs multiples à cette ligne
- undefined reference to
`boost::thread::join()'
- undefined reference to
`boost::thread::~thread()'
»
sont-les en-têtes de comprennent boost dans votre compilateur chemin? Êtes-vous lié à des bibliothèques nécessaires? – Cogwheel
Je suppose que je suis, pas sûr cependant .. –
C'est une erreur de lien. Vous ne passez probablement pas la bibliothèque requise (l'option concrète dépendra de la version de votre bibliothèque, de la plate-forme et d'autres choses) vers l'éditeur de liens. –