|
|
|
|
Bonjour,
pour entrer dans le vif du sujet, je voudrais savoir pourquoi Monodevelop me dit "Compiler not found: g++" lors de la première utilisation sur un programme basique en c++ . Il ne m'a jamais demandé où trouver le fichier pour compiler (comme javac.exe pour Java, le seul language de prog que je connaisse à l'heure actuelle ^^) et je ne sais pas où le lui donner, je ne sais d'ailleurs pas où le trouver moi-même.
Merci de votre aide et demandez moi si vous avez besoin de plus de détails,
Voili, voilou, je crois que c'est tout !! :)Configuration: Linux Ubuntu 8.04
Firefox 3.0.1
Ben là s'il cherche g++ c'est que tu lui as dit que ton programme était écrit en C++. Du coup il cherche un compilateur C++ (ici g++) qu'il ne trouve pas, ce qui est logique si tu ne l'as pas installé. Pour développer en java tu peux utiliser directement eclipse, bluej, ... où tout faire à la main avec un
|
Merci !!! J'ai trouvé la solution ... Comme tu l'as dit, il fallait installer g++ (ce que j'ai fait avec la commande " sudo apt-get install g++ ") ce qui m'a d'ailleurs étonné étant donné que je croyais que g++ était installé d'office ssur Ubuntu 8.04. Enfin bref, le résultat est tout de même le bon :p
|
#include <iostream.h>
void main()
{
cout << "Bienvenue" << endl;
}
Oulà alors on va oublier l'écriture du C++ d'il y a vingt ans et réécrire ça proprement :-) Aujourd'hui les headers de la STL de prennent plus de .h et toutes les classes sont dans le namespace std. De plus main est sensé retourner un code d'exécution (0 si tout va bien). Ce qui donne : #include <iostream>
int main(){
std::cout << "Bienvenue" << std::endl;
return 0;
}
Si tu n'aimes pas les std:: et si tu es dans un fichier .cpp tu peux écrire : #include <iostream>
using namespace std;
int main(){
cout << "Bienvenue" << endl;
return 0;
}
Bonne chance |
J'ai essayé tes deux propositions mais aucune des deux ne marche et je reçois toujours le même message d'erreur que précédemment.
|
De plus, je ne comprends pas pourquoi le main ne peut pas être void. Quel intêret de le forcer à renvoyer une valeur ? Et est ce qu'il peut renvoyer autre chose (un string, par exemple) ?
(mando@aldur) (~) $ cat pouet.cpp
#include <iostream>
int main(){
std::cout << "Bienvenue" << std::endl;
return 0;
}
(mando@aldur) (~) $ g++ -W -Wall -o plop pouet.cpp
(mando@aldur) (~) $ ./plop
Bienvenue
(mando@aldur) (~) $
En terme de paquet voilà ce que j'ai installé : libc6, libc6-dev, libc6-i686, gcc, et g++ Bonne chance |
J'ai vérifé que tous les package étaient bien tous installés (ce qui était le cas) et j'ai lancé les même commandes que toi. Résultat : ça marche avec le shell (ouf... :) !!! Donc l'erreur vient de Monodevelop et pour trouver la faille, je vais bien rigoler (moins ouf tout de suite... T_T).
|
Ca se voit que tu connais pas Monodevelop étant donné qu'il est destiné et développé pour tourner sur Gnome ^^
|