Certains programmes n'affichent pas la sortie de certains processus enfants. Comme vous pouvez le voir ,
J'ai essayé de courir php --version
dans trois utilitaires de console: Git Bash (MinGw), ligne de commande Windows 8 native et terminal Cygwin.
Les deux premiers programmes renvoient des informations sur la version de PHP, mais Cygwin n’imprime aucune sortie. Cygwin n'est toutefois pas le seul programme à ne pas imprimer la sortie de la console des processus enfants. Par exemple, qmake
(la partie de Qt Framework) ne renvoie également rien dans Cygwin lors de l'exécution qmake -query
. Par conséquent, je ne peux pas utiliser Qt Creator sur mon PC, car Qt Creator ne peut pas analyser la sortie de qmake
.
Des idées sur la façon de résoudre ce problème? J'utilise actuellement Windows 8 x64, mais ce problème s'est également produit lorsque Windows 7 x64 était installé sur mon PC.
Réponses:
Vous mélangez les termes!
La première capture d'écran est la même que la seconde - il s'agit d'une console Windows standard.
La troisième capture d'écran est en fait un émulateur de menthe, mais pas une vraie console. Voir "min" en son nom? Une quantité énorme d'applications ne peut pas être exécutée dans la menthe du tout!
Je crois que la solution consiste à utiliser une console appropriée. En outre, vous pouvez essayer ConEmu en tant que terminal Windows avancé, il est "tout proposé et complet" (je suis l'auteur).
Quant au créateur de QT ... Essayez d'utiliser ProcessMonitor pour trouver le problème. Oui, ce n'est pas rapide et facile, mais vous pouvez essayer. Si cela fonctionne sur un autre PC que vous avez, vous pouvez comparer vos journaux. De plus, certains outils tiers peuvent installer des crochets globaux, qui interfèrent avec le comportement normal de la tuyauterie. Peut-être autre chose ... Des virus ou des antivirus, non?
la source
Comme l'utilisateur suggéré par Maximus ici avant, la raison était un logiciel antivirus. Après avoir ajouté Cygwin et Qt à la liste des exceptions, les deux programmes ont commencé à fonctionner correctement.
la source