2010-07-04 6 views
2

J'essaie de comprendre comment utiliser la prochaine version C++ 0x. Il devrait être disponible dans GCC 4.3+ en utilisant l'option gcc std = gnu ++ 0x.Comment compiler et exécuter C++ 0x avec GCC/G ++ dans Eclipse CDT?

Mon programme de thread simple utilisant 0x compile dans Eclipse CDT avec std = gnu ++ 0x ajouté dans Projet> propriétés> C/C++ Build> Paramètres> Divers> Autres drapeaux. Le programme n'imprime que "starting" et renvoie 0. Est-ce que quelqu'un sait pourquoi il n'exécute pas la fonction hello threaded?

+4

Avez-vous ajouté le drapeau '-pthread', à l'éditeur de liens et le compilateur? – nos

+0

Nice, ajoutant l'option -pthread à l'éditeur de liens et au compilateur. Merci beaucoup. – davidhalldor

+0

Ajouter ceci comme réponse pour pouvoir voter! – mmocny

Répondre

3

Pour utiliser des unités d'exécution, vous devez également effectuer un lien avec la bibliothèque d'unités d'exécution. Dans le cas où vous ne l'avez pas fait, ajoutez -lpthread à votre ligne de commande ou dans votre cas à d'autres champs de drapeaux.

La ligne de commande exécuter (visible dans la fenêtre de votre console Eclipse) devrait ressembler à ceci:

gcc -std=gnu++0x -lpthread <source_file_name>.cc

Questions connexes