1

Lut tout le monde.
J ai commencé à apprendre le c++ à la fac, et apparemment on risque faire un peu de c aussi.
Le probleme c est que je n ai pas de compilateur.
J ai téléchargé devc++ mais il plante, je ne peux ni compiler, ni enregister mes programmes (il me donne une erreur).
Je voulais donc savoir quels compilateurs vous me conseillez d utiliser.
D avance merci.

2

g++ / gcc

3

VIsual Studio avec le compilateur MS est pas mal
sinon, gcc/g++, avec n'importe quelle IDE (Dev-Cpp, par exemple ; mais tu peux aussi utiliser Mingw sous windows, ou cygwin, ou alors, mettre un linux)
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

4

heu VC++ a certains problemes avec les dynamique cast ect...
perso prefere un bon g++tongue

5

n'importe quoi, les VC++ récents sont bons, et en plus tu peux télécharger gratuitement la dernière version du compilo sur le site de MS (google Visual C++ Toolkit)

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

6

la version 6 étaient loin d'etre bonne sur ce point là.
quand à la distribution gratuite de la derniere version:
elle est plus lourde
elle est gratuite que pour une certaine durée, et c'est une béta...

7

Merci à tous pour vos réponses. tongue

8

pour visual studio, tu dois pouvoir l'avoir en version complète gratuite si ta FAC est inscrite au MSDN Academic Alliance
me semble que c le cas pour mon IUP, faudrait que je me renseigne : parait qu'on peut avoir tout visual studio et MSDN en gratuit, et pareil pour l'OS
(utilisable tant qu'on est encore dans la fac, et ensuite, valable tant qu'on n'a pas désinstallé (en gros, si on formatte pas, on peut le garder éternellement))
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

9

JackosKing VNR
: la version 6 étaient loin d'etre bonne sur ce point là.

Je sais, je parle des suivantes justement gol
quand à la distribution gratuite de la derniere version:
elle est plus lourde
elle est gratuite que pour une certaine durée, et c'est une béta...

Tu parles de la béta de VS 8 (avec l'IDE), qui effectivement n'est pas gratuite et qui n'est faite que pour le béta-teste, là je parlais de la release du compilo de VC++ 7.1 (donc sans l'IDE), qui elle est totalement gratuite.

et ensuite, valable tant qu'on n'a pas désinstallé (en gros, si on formatte pas, on peut le garder éternellement)

t sûr ?

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

10

Je pense pas qu'à la fac ils apprennent plutôt à programmer en C ou C++, pas en un machin dérivé de Microsoft.
Pour windows, Dev-C++ qui contient MinGW est un très bon choix.
Si néanmoins, tu travailles à la fac dans un environnement POSIX et que tu souhaites rester sur windows, tu peux aussi essayer cygwin.
J ai téléchargé devc++ mais il plante, je ne peux ni compiler, ni enregister mes programmes (il me donne une erreur).

C'est probablement parce que tu es un peu empoté.
Normalement, dès l'installation qui s'effectue en 5 secondes, on créé et compile facilement un Hello World.
Un message d'erreur est là pour t'expliquer la source de l'erreur, aussi tu aurais peut-être pu essayer de régler le problème plutôt que d'abandonner.

11

Pas vraiment. Ca dépend vraiment des betas, parfois en allant sur le site, la dernière version disponible ne compile même pas les exemples fournis avec. Mais là je viens de ré-essayer, et ça marche avec la 4.9.9.0 donc peut-être que tu devrais tenter neoshiro.
avatar
;)

12

JackosKing VNR :
la version 6 étaient loin d'etre bonne sur ce point là.

Je sais, je parle des suivantes justement


quand à la distribution gratuite de la derniere version:
elle est plus lourde
elle est gratuite que pour une certaine durée, et c'est une béta...

Tu parles de la béta de VS 8 (avec l'IDE), qui effectivement n'est pas gratuite et qui n'est faite que pour le béta-teste, là je parlais de la release du compilo de VC++ 7.1 (donc sans l'IDE), qui elle est totalement gratuite.


>> je n'ai pas essayé le dernier compilo. d'ailleur le seul interet que j'apportait a VC++ etait sa tres tres bonne ide. Maintenant je tourne avec mes makefile et gcc/g++ + xemacs et je suis tres content. Je decouvre actuellement XCode qui me surprend de plus en plus (ide d'apple) donnée gratuitement en version finale. (possibilité d'avoir des betas avec l'ADC student).
J'ai pas le niveau pour critiquer la performance de tel ou tel compilo (on vera apres mon option compilation en fin d'année). pour le moment, je juge sur mon experience personnelle avec 3 ans de prog sous VC++ 6 et 1 ans sous xemacs + g++.
Et puis maintenant vu que je suis majoritairement sous osX et en tp sous linux/debian sans KDev etc... je pense pas revenir à VC++ sauf pour boulot prof.

13

t sûr ?

http://www.microsoft.com/france/msdn/abonnements/academic/savoirplus.asp
point 10 :
Etudiants

* L'étudiant peut conserver les produits installés sur ses machines personnelles tant qu'il est inscrit dans l'établissement scolaire.
* Lorsqu'il quitte l'établissement, il peut conserver les logiciels déjà installés mais ne peut en installer de nouveaux issus du MSDNAA. * Si l'abonnement de l'établissement a expiré, un étudiant n'a pas la possibilité de réinstaller les logiciels qu'il avait déjà installés, même s'il est encore inscrit dans l'établissement. Par contre, il peut conserver les logiciels déjà installés.


avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

14

loufoque
: Je pense pas qu'à la fac ils apprennent plutôt à programmer en C ou C++, pas en un machin dérivé de Microsoft.

Ca c du beau troll trilove A mon avis les chances d'utiliser des trucs non portables sont plus élevées si tu utilises un truc avec des extensions de langage partout comme gcc qu'avec Visual C++... (les rares extensions de VC++ sont toujours clairement marquées comme telles dans la doc, et bourrées d'underscores : alors que si tu utilises des extensions de gcc style chaînes multi-lignes [qu'ils ont fini par virer, d'ailleurs], compound literals, etc... tu peux très bien ne pas du tout t'en rendre compte) Menfin cela dit gcc essaye de corriger le tir (à la plus grande joie de Kevin Kofler tongue)

Et puis de toute façon il faut tjs compiler de tps en tps avec un autre compilo, pour s'assurer qu'on fait du code portable...
JackosKing VNR
: >> je n'ai pas essayé le dernier compilo. d'ailleur le seul interet que j'apportait a VC++ etait sa tres tres bonne ide. Maintenant je tourne avec mes makefile et gcc/g++ + xemacs et je suis tres content.

Le compilo de VC++ est bien plus rapide que GCC, et génère probablement du meilleur code... Mais évidemment si t pas sous Windows t'as pas le choix.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

15

JackosKing VNR
: Je decouvre actuellement XCode qui me surprend de plus en plus (ide d'apple) donnée gratuitement en version finale.

Microsoft distribue gratuitement les version express de leurs IDE
http://lab.msdn.microsoft.com/express/default.aspx

16

Et quel est l'intérêt de la portabilité à plusieurs compilateurs? Ce qui est important, c'est la portabilité à plusieurs plateformes, mais elle peut être obtenue aussi à l'aide d'un seul compilateur qui gère toutes ces plateformes (comme GCC).
avatar
Mes news pour calculatrices TI: Ti-Gen
Mes projets PC pour calculatrices TI: TIGCC, CalcForge (CalcForgeLP, Emu-TIGCC)
Mes chans IRC: #tigcc et #inspired sur irc.freequest.net (UTF-8)

Liberté, Égalité, Fraternité

17

Kevin Kofler
: Et quel est l'intérêt de la portabilité à plusieurs compilateurs? Ce qui est important, c'est la portabilité à plusieurs plateformes, mais elle peut être obtenue aussi à l'aide d'un seul compilateur qui gère toutes ces plateformes (comme GCC).
GCC est sous-efficace sur la plupart des plateformes (exemples les plus frappants : sur ARM et PowerPC). De plus GCC est très peu utilisé en entreprises. Et enfin, un monopole est toujours mauvais.
So much code to write, so little time.

18


Le compilo de VC++ est bien plus rapide que GCC, et génère probablement du meilleur code... Mais évidemment si t pas sous Windows t'as pas le choix.

N'importe quoi !!! (Pas pour la vitesse de build, j'avoue que G++ est lent, mais lent).
/G6 optimizes code for the Intel Pentium Pro, Pentium II, Pentium III, and Pentium 4 processors. I
/G7 optimizes code for the Intel Pentium 4 or AMD Athlon. It sets the value of the _M_IX86 preprocessor macro to 700. Code compiled with /G7 may result in these applications running slightly slower on older processors in the Pentium family (for example, Pentium III).

Comment veux-tu faire un Build qui optimise a la fois pour P4 et pour Athlon ? C'est IMPOSSIBLE !!!!
PIII et Athlon, oui. Mais P4 et PIII ou P4 et athlon, non, non !
Donc soit Visual n'optimize pas correctement pour Athlon et pour PIII, soit pour P4. Mais pas les 2.

A mon avis les chances d'utiliser des trucs non portables sont plus élevées si tu utilises un truc avec des extensions de langage partout comme gcc qu'avec Visual C++... (les rares extensions de VC++ sont toujours clairement marquées comme telles dans la doc, et bourrées d'underscores : alors que si tu utilises des extensions de gcc style chaînes multi-lignes [qu'ils ont fini par virer, d'ailleurs], compound literals, etc... tu peux très bien ne pas du tout t'en rendre compte)

gcc -ansi, gcc -pedantic tu connais ? C'est tres efficace pour gueler sur ce qui est vraiment important pour la portabilite (Pas comme ICC qui gueule sur tout et n'importe quoi).

GCC est sous-efficace sur la plupart des plateformes (exemples les plus frappants : sur ARM et PowerPC).

A ce point la ?

De plus GCC est très peu utilisé en entreprises.

J'en connais qui pleure en entreprises de ne pas pouvoir utiliser GCC, ou un compilateur un minimum non-bugge grin

Et enfin, un monopole est toujours mauvais.

oui

19

Je ne pense pas que le monopole d'un logiciel open-source soit mauvais.

20

la concurrence pousse à s'améliorer...
si y'a qu'un seul logiciel, qu'est-ce que tu veux qu'il cherche à s'améliorer ?
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

21

>si y'a qu'un seul logiciel, qu'est-ce que tu veux qu'il cherche à s'améliorer ?
Ben si Powered By PpHd, pas besoin de concurrence pour s'ameliorer grin

22

lol
mais y'a la durée aussi tongue 3 ans pour la première beta de CF ? cheeky
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

23

C'est pas ma faute si je le suis a bosser a la T3. tongue
Et puis au moins, c'est sorti. Rappeler moi Zakira ou ?

24

certes, c'est sorti smile
c'est ça qui compte smile
(hum, vaut mieux pas que je me dise le contraire, pour KII grin )
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

25

PpHd
:

Le compilo de VC++ est bien plus rapide que GCC, et génère probablement du meilleur code... Mais évidemment si t pas sous Windows t'as pas le choix.

N'importe quoi !!! (Pas pour la vitesse de build, j'avoue que G++ est lent, mais lent).
/G6 optimizes code for the Intel Pentium Pro, Pentium II, Pentium III, and Pentium 4 processors. I
/G7 optimizes code for the Intel Pentium 4 or AMD Athlon. It sets the value of the _M_IX86 preprocessor macro to 700. Code compiled with /G7 may result in these applications running slightly slower on older processors in the Pentium family (for example, Pentium III).

Comment veux-tu faire un Build qui optimise a la fois pour P4 et pour Athlon ? C'est IMPOSSIBLE !!!!
PIII et Athlon, oui. Mais P4 et PIII ou P4 et athlon, non, non ! Donc soit Visual n'optimize pas correctement pour Athlon et pour PIII, soit pour P4. Mais pas les 2.

Mouais, j'appellerais ça un argument à la Kevin ça... Moi je suis pas du tout convaincu que la différence d'optimisation soit significative au point que ça soit *très grave* d'utiliser le même code pour P4 et Athlon (hors gestion SSE/3dNow/... qui est soumise à d'autres flags), et donc si le compilo est par ailleurs meilleur, ton argument ne vaut rien du tout. Cela dit, j'ai jamais fait de comparatifs entre les deux, et ça évolue avec le tps, donc il se pourrait parfaitement qu'actuellement GCC soit en fait meilleur...
A mon avis les chances d'utiliser des trucs non portables sont plus élevées si tu utilises un truc avec des extensions de langage partout comme gcc qu'avec Visual C++... (les rares extensions de VC++ sont toujours clairement marquées comme telles dans la doc, et bourrées d'underscores : alors que si tu utilises des extensions de gcc style chaînes multi-lignes [qu'ils ont fini par virer, d'ailleurs], compound literals, etc... tu peux très bien ne pas du tout t'en rendre compte)
gcc -ansi, gcc -pedantic tu connais ? C'est tres efficace pour gueler sur ce qui est vraiment important pour la portabilite (Pas comme ICC qui gueule sur tout et n'importe quoi).

OK, mais à condition que les includes marchent avec (cf, hum, nan rien triso)

loufoque :
Je ne pense pas que le monopole d'un logiciel open-source soit mauvais.

Tout dépend des raisons de ce monopole : si c'est parce que la demande est trop faible ou parce que l'implémentation du logiciel qui a le monopole est totalement satisfaisante, très bien (par exemple, je sais pas, une lib de calcul de MD5 peut très bien avoir le monopole, ça ne me choque pas parce que je ne peux pas vraiment en exiger plus, et si je veux optimiser plus je peux modifier légèrement le code existant).

Par contre, si c'est parce qu'on s'est amusé à construire un système inextricablement compliqué, qu'on a un prog très lourd et très loin d'être optimal (aussi parce qu'il a un passé chargé), le monopole n'est pas forcément souhaitable, ou en tout cas, il faut tout faire pour éviter de rendre difficile la mise en place d'alternatives (et il faut donc éviter à tout prix d'utiliser des extensions GNU). Ce n'est pas parce que GCC est open-source que ce serait pour autant facile de le rendre 3x plus rapide : s'il est mal structuré, il est mal structuré.

« The biggest civil liberty of all is not to be killed by a terrorist. » (Geoff Hoon, ministre des transports anglais)

26

Pollux
:
gcc -ansi, gcc -pedantic tu connais ? C'est tres efficace pour gueler sur ce qui est vraiment important pour la portabilite (Pas comme ICC qui gueule sur tout et n'importe quoi).
OK, mais à condition que les includes marchent avec (cf, hum, nan rien triso)
LOL, je pensais à la même chose. grin
PpHd
:
GCC est sous-efficace sur la plupart des plateformes (exemples les plus frappants : sur ARM et PowerPC).
A ce point la ?

Oui, le back-end ARM est contribué par ARM eux-même (avant c'était une catastrophe) et ils se servent de GCC comme vitrine pour laisser les clients tester leurs CPU sans avoir besoin d'investir dans le compilateur ARM, du coup ils mettent systématiquement 18 mois de différence entre leur compilateur à eux, qui est performant, et GCC.

En ce qui concerne PowerPC, GCC est distancé aussi bien par IBM que par Green Hills et quelques autres vendeurs. Je lisais il y a 6 mois environ un article écrit par un développeur Mac OS X qui se plaignait que ses projets étaient systématiquement plus lents avec GCC alors que c'est le compilateur utilisé par Apple pour compiler tout l'OS (25% plus lent d'après ses tests). Là encore, IBM fait énormement de contributions à GCC, mais garde pour eux un avantage certain sur leur suite de compilateurs.
So much code to write, so little time.

27

>Mouais, j'appellerais ça un argument à la Kevin ça... Moi je suis pas du tout convaincu que la différence d'optimisation soit significative au point que ça soit *très grave* d'utiliser le même code pour P4 et Athlon (hors gestion SSE/3dNow/... qui est soumise à d'autres flags), et donc si le compilo est par ailleurs meilleur, ton argument ne vaut rien du tout.
eek N'importe quoi. Tu connais vraiment pas les differences entre Athlon et P4. Le P4 c'est un monde a part. Et ca s'est largement accentue avec leur "Pentium 5" qui veut pas dire son nom.

>Cela dit, j'ai jamais fait de comparatifs entre les deux, et ça évolue avec le tps, donc il se pourrait parfaitement qu'actuellement GCC soit en fait meilleur...
J'ai jamais utilise Visual, donc je peux pas dire. Mais je vais comparer avec ICC.

>OK, mais à condition que les includes marchent avec (cf, hum, nan rien )
Tu peux essayer a coup de __extension__ pour voir si ca passe.

>Par contre, si c'est parce qu'on s'est amusé à construire un système inextricablement compliqué, qu'on a un prog très lourd et très loin d'être optimal (aussi parce qu'il a un passé chargé), le monopole n'est pas forcément souhaitable, ou en tout cas, il faut tout faire pour éviter de rendre difficile la mise en place d'alternatives (et il faut donc éviter à tout prix d'utiliser des extensions GNU).
La complexite de mettre en place les extensions GNU est surement bien moindre que faire un compilateur C optimal et multi-archtecture.

> Ce n'est pas parce que GCC est open-source que ce serait pour autant facile de le rendre 3x plus rapide : s'il est mal structuré, il est mal structuré.
C'est surtout une question de volontee, et 3x plus rapide me parait legerement demesure smile

>ARM & Power PC.
Dommage, mais il faudrait que je regarde plus en details.

28

la concurrence pousse à s'améliorer... si y'a qu'un seul logiciel, qu'est-ce que tu veux qu'il cherche à s'améliorer ?

la concurrence est une notion de marketing, de vente, de marché.
Un logiciel propriétaire, lorsqu'il s'améliore, c'est pour faire face à la concurrence, prendre plus de parts de marché et faire plus de pognon.
La finalité du logiciel libre étant directement de créer le logiciel le meilleur possible, la notion de concurrence ne s'y applique pas vraiment.

29

loufoque
: La finalité du logiciel libre étant directement de créer le logiciel le meilleur possible, la notion de concurrence ne s'y applique pas vraiment.
Va dire ça à Kevin, qui voit de la concurrence à TIGCC partout... grin
So much code to write, so little time.

30

La finalité du logiciel libre étant directement de créer le logiciel le meilleur possible

moué... finalité peut-être pas toujours atteinte grin
peut-être par manque de concurrence ? cheeky
avatar
Tutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall