Drapeaux par défaut pour le compilateur gcc dans Eclipse

Je veux que tous mes programmes C soient compilés avec les options -Wall -pedantic -ansi par défaut. Existe-t-il un moyen pour Eclipse d’append ces indicateurs à la commande du compilateur par défaut pour tous les projets?

Atsortingbuez à CFLAGS l’inclusion de ces valeurs et demandez à Eclipse d’exécuter un outil qui utilise cette variable d’environnement par défaut lors de la compilation (telle que make).

Vous devrez peut-être spécifier des variables d’environnement avant d’exécuter Eclipse (puis elles seront héritées lors de l’exécution d’Eclipse), mais il existe peut-être un moyen de spécifier l’environnement par défaut dans Eclipse.

(Je n’utilise pas Eclipse, je vais donc devoir voir comment installer et tester ceci; ou peut-être que cette réponse peut rafraîchir la mémoire de quelqu’un, si c’est le cas, n’hésitez pas à l’éditer.)


En passant, vous voudrez peut-être -std = c99 au lieu de -ansi. L’option -ansi signifie simplement -std = c89 ou -std = c ++ 98, selon que vous comstackz C ou C ++, et les deux normes indiquent leur âge.


J’ai installé Eclipse dans une machine virtuelle exécutant Windows pour tester cela et, même si CFLAGS est dans l’environnement, Eclipse ne l’utilise pas. Eclipse prétend également (en affichant un texte comme “make all” et “make clean”) qu’il est en cours d’exécution make dans quelques situations / projets que j’ai essayés, quand il n’utilise pas vraiment make (probablement avec un moteur interne). Cette réponse était sur la mauvaise voie pour Eclipse.

En supposant que vous utilisiez le générateur interne d’Eclipse, allez à Préférences-> C / C ++ Construire-> Paramètres

Choisissez la section des avertissements pour le compilateur, il y a des cases à cocher pour les options -Wall et -pedantic For -ansi dans Divers

Comme l’OP le note, il ne s’agit que d’un projet et non d’un paramètre global

Eclipse sous Windows: Pour un projet: Propriétés -> C / C ++ Construire -> Paramètre autre que l’onglet “Paramètre d’outil”. Sélectionnez “Compilateur CGG C ++” à droite. La commande: g ++ modifiez-la en commande: g ++ CFLAGS par exemple si vous souhaitez que le support de C ++ 11 soit modifié en tant que commande: g ++ –std = c ++ 11

PS: Cette modification ne sera valable que pour le projet en cours et pour la configuration en cours uniquement. Si vous le souhaitez pour toutes les configurations, modifiez chaque configuration (Run, Debug) de manière similaire.

EDIT: Je vois que l’OP utilise Windows à partir d’un commentaire précédent. Toutefois, les informations suivantes peuvent être utiles aux utilisateurs d’Eclipse sur la plate-forme Linux, si Eclipse respecte l’alias.


Eclipse sous Linux? Si tel est le cas, essayez d’aliaser la commande gcc; lancez ceci sur un terminal:

 alias gcc='gcc -Wall -pedantic -ansi' 

C’est une méthode courante sous Linux pour spécifier les parameters par défaut d’une application. Cependant, Eclipse peut exécuter l’application gcc réelle et ignorer l’alias; Je ne l’ai pas testé.

Oui, Exécuter en tant que -> Exécuter la configuration -> Le premier onglet est “Principal”, choisissez le deuxième onglet (celui à côté de lui), vous avez là la boîte des arguments, collez -Wall -pedantic -ansi et appliquez puis exécutez Chaque fois que vous exécuterez, vous aurez ces arguments par défaut