Dans Ubuntu 12.04 LTS, j'ai installé le plug-in Eclipse CDT et ouvert le nouveau projet hello world pour tout tester. Lors de la création du projet, j'ai choisi l'unique chaîne d'outils: "Linux GCC"
Lorsque le projet est créé, cependant, il est indiqué que
#include<iostream>
#include<cstdlb>
sont non résolus. Ainsi, les lignes avec cout
et endl
ne peuvent pas être utilisées et il ne peut pas trouver std
.
using namespace std;
pose également des problèmes.
Comment obtenir mes directives #include
pour les en-têtes de bibliothèque standard reconnus, afin de prendre en charge le code utilisant l'espace de noms std
?
Si vous aviez le même problème que moi, je soupçonne que votre projet est construit mais que la complétion/mise en évidence de code échoue? Je viens de trouver des notes qui pourraient être utiles. Voici ce que j'ai fait:
Projet-> Propriétés
C/C++ Général
Chemins et Symboles
sélectionnez la langue appropriée
Cliquez sur "Ajouter" et ajoutez les répertoires spécifiques à la version du compilateur.
Pour le langage 'GNU C++', j'ai ajouté:
/usr/include
/usr/include/c++/4.6
/usr/include/c++/4.6/bits
/usr/include/i386-linux-gnu
/usr/include/i386-linux-gnu/bits
/usr/include/c++/4.6/debug
/usr/include/c++/4.6/i686-linux-gnu
/usr/include/c++/4.6/i686-linux-gnu/bits
Pour "GNU C", j'ai ajouté:
/usr/include
/usr/include/i386-linux-gnu
/usr/include/i386-linux-gnu/bits
TBH, je ne pense pas que tous les répertoires ci-dessus soient réellement nécessaires (vous pouvez probablement supprimer les répertoires "bits"), mais la liste ci-dessus a fonctionné pour moi à ce moment-là.
J'utilise maintenant Eclipse Indigo (version 3.7.2) d'Eclipse.org et il trouve et ajoute automatiquement les répertoires d'inclusion corrects. La liste est différente pour moi:
/usr/include/c++/4.6
/usr/include/c++/4.6/i686-linux-gnu
/usr/include/c++/4.6/backward
/usr/lib/gcc/i686-linux-gnu/4.6/include
/usr/local/include
/usr/lib/gcc/i686-linux-gnu/4.6/include-fixed
/usr/include/i386-linux-gnu
/usr/include
Clairement, ajoutez seulement les répertoires include qui existent réellement sur votre système ;-)