Comment puis-je formater la sortie de marque ( !! en modifiant uniquement le fichier de projet QMake !! strong>).
Mes lignes de compilation continuent de croître et les avertissements d'une ligne / des erreurs disparaissent presque entre eux. Je pense à quelque chose comme p> merci à considérer p > p>
3 Réponses :
Vous pouvez supprimer l'impression avec '@' et faire écho ce que vous voulez voir:
Exemple simple: P>
out.ext: $(OBJ) @echo $(CC) -o out.ext @$(CC) -o out.ext $(OBJ) $(OTHER_FLAGS_ETC)
Euh je veux faire la magie inversement et seulement à l'intérieur de QMake. Désolé pour la confusion.
OP a demandé qmake
Il existe différentes approches. Et vous pouvez les rendre configurables.
@ code> signe strong> devant la ligne dans la règle, la commande elle-même ne sera pas imprimée, mais sa sortie sera. Li>
- Si vous
ajoutez -werror code> à votre CFLAGS code> strong> variable (vous en avez un, n'est-ce pas? C'est une pratique courante!) , vous ne manquerez certainement aucun avertissement - la construction s'arrêtera après la première. Li>
- Vous pouvez
Rediriger la sortie standard de votre commande à / dev / null code> strud>, laissant uniquement le flux d'erreur (ce n'est pas pour votre cas particulier, car GCC ne le fait pas rendement de rendement mais peut être utile pour d'autres commandes). LI>
ul> Malheureusement, pour qmake code> seule la deuxième approche s'applique. Ajouter à votre fichier de projet: p> xxx pré> et les maquillages générés utiliseront ces indicateurs lorsqu'ils invoquent Compiler, de sorte que la construction s'arrête à chaque avertissement. P> <<
(cette section sera déplacée vers une autre question dès que celle-ci apparaît). p>
Pour que vous puissiez utiliser tout cela - vous pouvez tout faire configurable! Voici l'exemple: p> xxx pré> donc, si vous invoquez faire code> comme ceci: p> xxx pré> Cela imprimera tout. Si vous invoquez p> xxx pré> la valeur code> courte code> sera utilisé par défaut (notez le ? = Code> Opérateur au lieu d'habituel < code> = code>!) Et les règles vont se développer à une telle version p> xxx pré> Qu'est-ce qui donnera grand chose que nécessaire. P>
Cette approche, Avec la configuration, est utilisé dans le code de production. Par exemple, je l'ai vu dans les fabricants glacés Ifedtea d'Ubuntu. P> P>
Euh je veux faire la magie inversement et seulement à l'intérieur de QMake. Désolé pour la confusion.
+1: pour -werror. C'est la meilleure suggestion imo et cette peut faire i> faire dans votre fichier de projet.
Merci pour vos gars de votre aide, mais -werror ne fournit pas ce dont j'ai besoin. (Nous ne pouvons pas quitter l'avertissement, car nous avons des avertissements de dépréciation, qui restent à l'intérieur jusqu'à ce que le travailleur attribué modifie la section)
Si vous utilisez le compilateur MSVC, utilisez -wx code> plutôt que
-werror code> pour traiter les avertissements comme des erreurs.
dans (remarque: je pense que c'est la commande. C'est quelque chose de similaire à cela.) p> qui devrait supprimer la majeure partie de la sortie, et seules des lignes d'impression comme "Compiler AO", ainsi que vos avertissements et erreurs. Je crois que cela est similaire à celui de Vous voudrez peut-être faire attention Avec cela, cependant, parce qu'il supprime beaucoup d'informations que des analyseurs d'erreur aiment utiliser. Par exemple, si vous compilez avec une configuration code> SubDirs code>, elle n'imprimera pas lors de la modification des différents répertoires. P> P> qmake code>, vous pouvez ajouter une option de configuration silencieuse:
code> 'S
.Silent. Code> directive (je pense que c'est celui-ci ...) p>
impressionnant. exactement ce dont j'avais besoin