OVH Cloud OVH Cloud

Pb débutant sur compilation gcc

5 réponses
Avatar
eric.bart
Bonjour,

le programme suivant ne veut compiler sous Mandrake 9.2
avec la commande : gcc main.cpp
----------------
#include <iostream>
using namespace std;

int main(void)
{
return 0;
}
-----------

Si j'enlève les deux premières lignes ça marche.

Merci

5 réponses

Avatar
ricky
bonjour

le programme suivant ne veut compiler sous Mandrake 9.2
avec la commande : gcc main.cpp
----------------
#include <iostream>
using namespace std;

int main(void)
{
return 0;
}
-----------

Si j'enlève les deux premières lignes ça marche.


essaye g++ main.cpp :-P
ca marchera nettement mieux...
le gcc tente par defaut de compiler du c standard, et il ne comprend pas
l'iostream et le using namespace !

ensuite, tu peux retirer l'affreux void qui traine dans ce code c plus
plus ? :-)

@+
ricky

Avatar
Anthony Fleury
Bonjour,

le programme suivant ne veut compiler sous Mandrake 9.2
avec la commande : gcc main.cpp
----------------
#include <iostream>
using namespace std;

int main(void)


int main(void) c'est du C, int main() est mieux en C++ (et ca prends moins
de place sur ton disque dur...)

{
return 0;
}


En fait, ton code est du C++ et contient des choses relatives à la librairie
standard. Par défaut, gcc ne connais pas la librairie standard du C++ (même
en -x cpp). Il te faut donc faire soit :
- g++ main.cpp
- gcc -lstdc++ main.cpp

Dans ces deux cas, ton .cpp est compilera.


--
Anthony Fleury
Love is an ideal think, marriage a real thing ; a confusion of the real
with the ideal never goes unpunished. -- Goethe

Avatar
Gabriel Dos Reis
"Anthony Fleury" writes:

| - gcc -lstdc++ main.cpp

Il se peut aussi que (dans le futur) on ait besoin d'autres options en
plus.

En conséquence je ne recommande pas cette façon.

-- Gaby
Avatar
eric.bart
essaye g++ main.cpp :-P


Oups ... Merci.

Avatar
eric.bart
- g++ main.cpp


Merci