Le programme C ++ écrit dans Eclipse à l'aide de Windows et de MinGW ne peut pas afficher la sortie dans la vue de la console
Je suis sous Windows 7 64 bits.
J'ai installé eclipse version 3.6.2, cdt, et MinGW. J'ai une console C++ du programme dans Eclipse comme suit:
#include <iostream>
#include <cstdio>
using namespace std;
int main() {
setbuf(stdout, NULL);
for (int i = 0; i < 10000000; i++) {
cout << "!!!Hello World!!!" << endl; //prints !!!Hello World!!!
}
int val;
cin >> val;
return 0;
}
Si je exécuter ce programme en mode console, il doit afficher Hello world
à la Console de la Vue dans Eclipse, mais rien ne s'affiche.
Si je vais dans le dossier de débogage et exécutez le fichier exe, il ne s'impriment dans la console.
Si je fais quelque erreur de syntaxe, alors que l'Éclipse de la Vue Console affichera quelque chose comme:
**** Internal Builder is used for build ****
g++ -O0 -g3 -Wall -c -fmessage-length=0 -osrc\hh.o ..\src\hh.cpp
..\src\hh.cpp: In function 'int main()':
..\src\hh.cpp:17:3: error: expected ';' before 'return'
Build error occurred, build is stopped
Time consumed: 255 ms.
Pourquoi n'y a rien à montrer dans l'Éclipse de la vue console et comment puis-je faire de ma console C++ programme de la sortie d'affichage?
source d'informationauteur Gqqnbig
Vous devez vous connecter pour publier un commentaire.
J'ai trouvé une solution de contournement à partir de ce site:
http://www.eclipse.org/forums/index.php?=42e862594001fa4469bbc834885d545f&t=msg&th=197552
À ce lien, regardez la réponse de "Pas de Nom réel".
Dans le cas où le lien est rompu, voici le contenu:
Le problème est que votre programme utilise les bibliothèques dll à partir de MinGW - essayez de démarrer le fichier exe manuellement, il signale une erreur à propos de dll manquantes.
Solution peut être, que vous copier dll requises .exe fichier dans votre répertoire de projet (et Release ou Debug sous-répertoire, dépend de ce que .exe vous êtes d'exécution avec la commande Run).
Ou, dans le menu Exécuter -> Exécuter Configuration sélectionnez la configuration que vous utilisez pour ça .fichier exe (ou en créer une nouvelle Application C/C++ de configuration) et sélectionnez l'onglet Environnement dans le panneau de droite. Y ajouter une nouvelle variable nommée CHEMIN avec la valeur c:\MinGW\bin (c'est par défaut le chemin de mingw\bin, utilisez un chemin d'accès valide pour votre installation, si elle est quelque part d'autre)
Edit: Maintenant, je suis à la recherche de poste par Vikyboss et c'est en fait la même définition de la variable de CHEMIN d'accès dans la configuration d'Exécution. Réglage variable de CHEMIN d'accès dans Préférences > C/C++ (Développer) > Environnement comme décrit par Sydraps ne fonctionne pas pour moi.
Mais je pense que la liaison statique que les bibliothèques peuvent être la meilleure solution pour vous. Dans le menu Projet -> Propriétés sélectionnez C/C++ Build -> Paramètres. Dans le panneau de droite, sélectionnez la Configuration que vous souhaitez modifier (vous pouvez sélectionner Tous). Dans l'onglet Paramètres de l'Outil de sélectionnez MinGW C++ Linker -> Divers et dans le panneau de droite dans le de l'éditeur de liens drapeaux type -statique. Maintenant, la .exe vont être bouffés par la taille des bibliothèques (dans mon cas environ. +De 900 ko pour l'exemple Hello world, nécessitant 2 dll), mais elle sera indépendante à toutes les bibliothèques.
J'espère que ce sera utile pour ceux qui cherchent à démarrer avec Eclipse C/C++ et je me demandais pourquoi il n'y a pas de " Bonjour tout le monde dans la console.
Ales Chlubny
J'ai résolu le problème sur mon windows 7 x64 PC. Dans la fenêtre Eclipse, allez dans les Préférences > C/C++ (Développer) > > Ajouter:
Si ce n'est pas le fixer. Essayez d'ajouter de la ci-dessus pour les variables d'environnement système sur votre PC en Ordinateur > paramètres Système Avancés
J'ai trouver la raison, juste parce que je suis en 64 bits eclipse!
Je tourne à 32 bits de l'éclipse, le même code fonctionne très bien.
Mon problème avec l'affichage bonjour tout le monde(64 bits Windows 7) dans la console a été résolu quand j'ai couru eclipse en tant qu'administrateur.
J'ai ajouté le
C:\MinGW\bin
à la variable d'environnement path, puis a commencé à eclipse en tant qu'administrateurJ'ai créé un Hello World en C++ du Projet (MinGW GCC) d'application à partir de l'Éclipse de l'assistant, couper et coller votre code compilé amende. Puis avant la course j'ai réduit votre boucle de 10 et il a fonctionné très bien.
Vous ne dites pas comment vous avez créé votre projet, mais il semble probable que votre manque quelques inclure la directive ou le chemin de la bibliothèque. Aussi, je ne vois pas la nécessité d'inclure ou d'setbuf(stdout, NULL). J'ai aussi trouvé utile lors du dépannage de ne PAS apporter tout un espace de noms dans l'étendue. Plutôt cela:
en utilisant std::cout;
en utilisant std::cin;
Enfin, les bouffées de chaleur de la mémoire tampon à chaque fois avec << endl; semble exagéré, l'ajout d'une simple \n à la fin de la chaîne serait plus efficace.(J'ai fait ça sur Win 7 64 bits - mais j'ai été en utilisant une version 32 bits d'Eclipse Galileo)
Si vous utilisez le compilateur MinGW,
http://orfe.princeton.edu/help/article-296
Pour moi d'installer les versions 32 bits de l'Éclipse (Indigo 3.7) et le Java 32 bits JDK/JRE n'a pas de travail. J'utilise le plus rapide de la solution à partir de la Eclipse CDT/Utilisateur/FAQ:
Citation de Eclipse CDT/Utilisateur/FAQ - Eclipse de la console n'affiche pas de sortie sur Windows:
J'ai eu un problème avec mon eclipse-cdt, nouveau projet C++ > bonjour tout le monde (cygwin gcc), clic droit sur l'exe fichier, exécuter en tant qu', et rien n'a été affiché sur la console. C'était la même chose avec c projet.
J'ai vu que mon eclipse version était déjà un 32bits.
Je compris cela et c'est ici (le) mon solution:
Il y a plusieurs compilation des profils dans eclipse cdt: release et debug. Le profil par défaut dans eclipse cdt est de débogage. Ainsi, le lancement de l'exe à l'aide de "exécuter en tant que" ne fonctionne pas, vous devez le lancer à l'aide de "debug". Dans mon cas, j'ai été en utilisant un très récent d'installation de cygwin avec gcc installé, mais avec gdb n'est pas encore installé. J'ai dû installer le paquet gdb dans l'utilisation de cygwin cygwin-setup. J'ai rediffusé le fichier exe à l'aide de "debug" et cela a fonctionné.
Je suppose que l'aide d'un profil de libération au lieu de débogage par défaut de profil, la reconstruction fonctionne aussi, et je pense que c'est la même chose avec mingw environnement.
Juste ajouté le C:\MinGW\bin pour la variable d'environnement "Path" dans Windows 7 64-bit.
Maintenant, Console de sorties des messages
J'ai rencontré un problème similaire.
Environnement:
Pas de sortie de la console à "Exécuter", mais la sortie correctement à "Debug".
La méthode suivante a fonctionné pour moi:
Aller de Projet > Propriétés > Exécuter/Déboguer les Paramètres de
Choisir la .exe fichier et appuyez sur "Modifier"
Dans "l'Environnement" de la balise, cliquez sur "Nouveau", le définir comme:
En fait, j'ai déjà "C:\MinGW\bin" comme la variable d'environnement PATH, mais il semblait ne pas fonctionner.
Fonctionne pour moi en allant Administrateur sur Eclipse Kepler 64 bits.
Au cas où quelqu'un est intéressé, j'ai trouvé comment résoudre le problème pour toujours sur Windows XP (peut fonctionner dans d'autres version de windows) sans que vous ayez à préciser les variables de chaque fichier exécutable et tel:
Menu démarrer > clic Droit sur poste de travail > Propriétés > Options Avancées > Variables d'Environnement
Là, dans les "variables Utilisateur" sur le terrain,
Accepter tout et vous devriez obtenir une sortie de la console 🙂