Pour vous débarrasser des avertissements de symbole que vous ne voulez pas, vous devez d'abord comprendre comment Eclipse CDT génère normalement des avertissements de symbole inconnu en premier lieu. Voici plus ou moins son processus :
- Eclipse détecte les chaînes d'outils GCC disponibles sur le système.
- Votre projet Eclipse est configuré pour utiliser une chaîne d'outils particulière.
- Eclipse fait une recherche sur la chaîne d'outils pour trouver ses chemins d'inclusion et ses définitions intégrées, c'est-à-dire en l'exécutant avec les options appropriées et en lisant la sortie.
- Eclipse lit les fichiers d'en-tête à partir des chemins d'inclusion.
- Eclipse indexe le code source de votre projet.
- Eclipse affiche des avertissements sur les symboles non résolus dans l'éditeur.
Il peut être préférable à long terme de résoudre les problèmes avec les étapes précédentes plutôt que d'écraser leurs résultats en ajoutant manuellement des répertoires d'inclusion, des symboles, etc.
Chaînes d'outils
Si vous avez installé GCC, et qu'Eclipse l'a détecté, il devrait l'inscrire comme choix de chaîne d'outils qu'un nouveau projet C++ pourrait utiliser, ce qui apparaîtra également dans le tableau suivant Window -> Preferences -> C/C++ -> New CDT Project Wizard
sur le Preferred Toolchains
de l'onglet Toolchains
sur le côté droit. Si elle ne s'affiche pas, voir la réponse de la FAQ CDT sur les compilateurs qui ont besoin d'environnements spéciaux. (ainsi que MinGW y Cygwin des réponses pour les gens de Windows).
Si vous avez un projet Eclipse C++ existant, vous pouvez changer la chaîne d'outils associée en ouvrant les propriétés du projet, et en allant à C/C++ Build -> Tool Chain Editor
et choisissez la chaîne d'outils que vous voulez dans la liste Current toolchain:
pulldown. (Vous devrez décocher l'option Display compatible toolchains only
box d'abord si la toolchain que vous voulez est assez différente de celle qui a été précédemment définie dans le projet).
Si vous avez ajouté une chaîne d'outils au système après avoir lancé Eclipse, vous devrez le redémarrer pour qu'il détecte la chaîne d'outils.
Découverte
Ensuite, si le projet C/C++ Build -> Discovery Options -> Discovery profiles scope
est réglé sur Per Language
Lors du prochain build, la nouvelle chaîne d'outils associée au projet sera utilisée pour la découverte automatique des chemins et des symboles inclus, et sera utilisée pour mettre à jour les chemins et les symboles "intégrés" qui apparaissent dans le fichier de configuration du projet. C/C++ General -> Paths and Symbols
dans le Includes
y Symbols
onglets.
Indexation
Parfois, il est nécessaire de réindexer à nouveau après avoir défini la chaîne d'outils et effectué une construction pour que les anciens avertissements de symboles disparaissent ; cliquez avec le bouton droit de la souris sur le dossier du projet et allez à Index -> Rebuild
pour le faire.
(testé avec Eclipse 3.7.2 / CDT 8)
0 votes
Avez-vous importé
iostream
?0 votes
Riight, quand on parle d'" importer " iostream, j'espère que vous faites en fait " #include <iostream> " puisque la notion d'importation de choses n'est pas tout à fait correcte en C++.
0 votes
@hmjd Je ne peux pas poster tout le code, mais un peu plus ne devrait pas faire de différence.
0 votes
@Jeff Observez-vous ce comportement dans tous vos projets elcipse ? Essayez de faire quelque chose avec seulement la fonction principale et l'iostream inclus et quelque chose inséré dans cout.
0 votes
Quelle est l'extension du fichier source :
.c
ou.cpp
?0 votes
@hmjd
.cpp
<longueur obligatoire>0 votes
Résolu (de façon insatisfaisante), voir la dernière mise à jour.
0 votes
Duplicata possible de Multiples problèmes "impossible à résoudre" lors de l'utilisation d'Eclipse avec minGW
0 votes
@USer22999299 sauf que mon post a été soumis presque 2 ans avant celui auquel vous faites référence....
0 votes
Je ne l'ai pas écrit, stack overflow a changé mon message :|
0 votes
@USer22999299 juste assez :)