[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 -
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.
++
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:
- [Dec-C++] liste des options.
- Liste déroulante excel - Guide
- Liste déroulante en cascade - Guide
- Windows 11 afficher d'autres options - Guide
- Liste code ascii - Guide
- Liste des appareils connectés - Guide
7 réponses
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
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
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 ++
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 ++
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.
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.
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 :
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)
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
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
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
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.
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.