web-dev-qa-db-fra.com

<Iostream> non résolu dans Eclipse, Ubuntu

Oui, c'est ça question encore ...

D'une certaine manière, je ne peux pas résoudre ce problème. Croyez-le ou non, j'ai de l'expérience avec Eclipse, mais uniquement pour le développement Java. J'ai programmé en C++ en utilisant vi mais pas avec Eclipse.

J'ai installé:

  • Ubuntu 12.04
  • Eclipse 3.7.2
  • GCC 4.6.3
  • Eclipse CDT 8.0.2

J'ai créé un projet Makefile vide et sélectionné la chaîne d'outils Linux GNU:

empty Makefile project

J'obtiens l'erreur standard Unresolved inclusion <iostream> et quelques références à divers répertoires "include" du projet:

<code>Unresolved inclusion <iostream></code> error

J'ai remarqué que, bien que mon paramètre "Chemins et symboles" pour GNU C contienne divers chemins, le même paramètre pour GNU C++ est vide:

GNU C Paths and Symbols

GNU C++ Paths and Symbols

De plus, j'ai le "GNU Elf Parser" sous mes paramètres de construction C/C++:

enter image description here


Qu'est-ce que je fais mal ici?

À votre santé


Modifier:

Voici une photo mise à jour du chemin de génération de mon projet qui fonctionne correctement: Updated build path

17
David Kaczynski

La raison en est qu’Eclipse ne peut tout simplement pas importer un en-tête approprié. L'en-tête C++ iostream dans Ubuntu peut être trouvé:

$: Sudo trouver/-name iostream

/ home/beniamin/QtSDK/Madde/toolchains/arm-2009q3-67-bras-non-linux-gnueabi-x86_64-inconnu-linux-gnu/arm-2009q3-67/bras-non-linux-gnueabi/include/c ++ /4.4.1/iostream
/home/beniamin/QtSDK/Madde/sysroots/harmattan_sysroot_10.2011.34-1_slim/usr/include/c++/4.4/iostream[.____. d'époque. /GCC/2.95/iostream
/usr/include/c++/4.6/iostream
/usr/include/boost/tr1/tr1/iostream

Donc, en gros, je suppose que celui que vous recherchez est /usr/include/c++/4.6/iostream, vous devriez donc inclure ce répertoire dans un endroit.

Edit: Vous devez également avoir installé g ++, ou simplement installer le paquet build-essential, obligatoire pour la construction de paquets debian. Néanmoins, g ++ aurait quand même dû être inclus dans votre installation Ubuntu.

6
Benjamin

Oui, j'ai constaté que l'utilisation de 

$: Sudo find / -name iostream

et en ajoutant le fichier includes dans le chemin includes, puis le succès. 

0
Snow