[Dec-C++] liste des options.

Résolu
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   -  
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   -
Bonsoir ,

j'aimerai savoir si il existerai une liste des option et a quoi servent-elles pour le compilateur qu'il y a dans Dev-C++.
comme par exemple l'option -lwsock32 a utiliser pour les sockets .

Merci de vos reponse.


++
A voir également:

7 réponses

Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
Toi tu as de sérieuses lacune en C !
Le compilo est gcc. et ce que tu apel les options, des 'library'.
La liste de ces bibliothèque (en fait morceau de codes déjà compilé, prètes à être lié) se trouvent normalement dans Dev-Cpp/lib
1
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   188
 
Salut ,
pour la reponse que tu viens de m'envoyer (je t'en remercie quand meme) je ne parle pas de sa je vois se que c'est les library c'est genre celui la--> #stdio.h

Je parle des options du compilateur par exemple dans Dev C++ il faut faire Options->Option du compilateur --> puis les commande qui s'ajoute a l'appel du compilateur.


a plus ++
1
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Au risque de te contrarier, tu as des lacunes en C++.
les *.h ne sont que les déclarations des fonctions contenue dans les library (à par les templates, et les fonctions inline je crois). Les morceau de codes sont dans les "lib" par exemple, si tu veu faire du reseau, tu rajoute winsock.h dans ton code pour avoir les déclarations des fonction (socket, bind accept etc...) mais lorsque tu compile, "ld" te renvoi une erreur qu'il ne trouve pas ces fonction, tu rajoute "-lwinsock" pour lui dire d'aller chercher les définitions de ces fonction dans la library libwinsock.a qui se trouve dans le dossier lib de DevCpp. Donc, cf ce qui a été dit au dessus.
Ensuite, si tu veux l'ensemble des options de gcc, avec une fenetre de commande, tu va dans le répertoire racine de gcc, et tu tape "gcc --help"
je te conseil de lire des documents la http://c.developpez.com/cours/
Bonne chance.
1
mamiemando Messages postés 33772 Date d'inscription   Statut Modérateur Dernière intervention   7 882
 
Petite reserve par rapport à ce que dit Char Sniper. Il y a des options qui n'ont rien à voir avec les header ou les librairies, notamment tout ce qui concerne les optimisations de compilation

Exemple :
gcc -02 plop.c

Il y a des options pour rajouter des chemins d'include (-I), des librairies statiques (.a) et dynamiques (.so) (-l, -L), régler la profondeur maximale des template, dérouler certaines boucles, etc...

Il y a aussi toutes les options liées au controle de la propreté du code (-W -Wall -pedantic)
gcc -W -Wall -pedantic plop.c

Tout ça pour dire que les options ca ne sert pas juste pour les includes et les librairies.

Ensuite en compilation il faut bien distinguer les phases suivantes :

1) Précompilation : on ne regarde que les instructions commençant par un #, notamment copier coller le code lié à un include, virer les sections de code dans une section #ifdef PLOP.... #endif telle que PLOP n'est pas validée, etc...

2) Compilation de chaque fichier .c/.cpp indépendamment, en vue de générer les .o. Toutes les erreurs de syntaxes se situent à ce niveau là.

3) Linkage
pour compiler l'éxecutable ou la lib finale. C'est là que surviennent les erreurs
a- de multidéfinitions (la même fonction compilé dans plusieurs .o)
b- de définition (une fonction est déclarée dans un header, mais le code n'est pas trouvé),
** 1- soit parce que la fonction n'est effectivement pas définie,
** 2- soit parce qu'il manque dans les options de compilation une librairie)
C'est en fait la phase qui consiste à recoller tous les .o ensemble de manière harmonieuse.

Enfin, plus pour Char Sniper, même si c'est peut-être vrai, ce n'est pas très élégant de dire à quelqu'un qu'il a des lacunes. Cf la charte qui dit "Réserver un accueil cordial aux nouveaux utilisateurs"

Bonne chance
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   188
 
Merci de vos grandes reponse je vais revoirs les cours sur le C++ et analysé tout sa *_* .
0
Char Snipeur Messages postés 9813 Date d'inscription   Statut Contributeur Dernière intervention   1 299
 
Salut.
En effet tu as raison mamie mando, j'ai été un peu trop ***. desoler naruto-94. Mais je pense que lire quelques cour te sera profitable. Je voulais en particulier t'en recommander un, qui s'apelle CppCoding, mais impossible de remettre la main dessus.
0
naruto-94 Messages postés 865 Date d'inscription   Statut Membre Dernière intervention   188
 
Salut ,

Merci pour vos reponses MamiMando et Char Sniper grace a vous j'ai un peu mieu compris les library ..etc.
je vais essayer de retrouver CppCoding sur Google ou autre ;) et les cour de developez.com

++ Et merci beaucoup
0