2017-03-22 1 views
-7

1- Je travaille sur un projet et j'ai fait une interface graphique simple mais je veux faire un bouton d'exécution dans mon interface graphique pour compiler et exécuter le code c ?? (je veux faire simple ide donc j'ai utilisé qt pour faire mon ui mais je ne peux pas faire un bouton qui envoie arg au terminal windows)Comment lancer le compilateur gcc à partir de mon application qt?

2- Comment bien débuter avec Qt (besoin d'un bon tutoriel)

+1

Huh? Cette question n'a aucun sens. – MrEricSir

+0

Votre question est étrange. Je suppose que vous voulez lancer le compilateur gcc à partir de votre propre application, n'est-ce pas? –

+0

Je pense que vous êtes un peu hors sujet! Mais de toute façon je vous conseille de regarder ce site: http://www.voidrealms.com/ et aussi la documentation officielle Qt: http://doc.qt.io/qt-5/qtexamplesandtutorials.html – basslo

Répondre

0

Vous pouvez exécuter n'importe quel programme à partir de Qt5 et capturer sa sortie standard en utilisant la classe QProcess. La documentation officielle avec des exemples est ici: http://doc.qt.io/qt-5/qprocess.html

Donc ce que je ferais alors est simplement de faire une interface graphique avec 2 widgets QTextEdit, un pour le code et un pour la sortie de compilation/exécution. Documentation pour QTextEdit est ici: http://doc.qt.io/qt-5/qtextedit.html

Ainsi, le « compiler et exécuter » bouton serait simplement

  1. Prenez le contenu de haut QTextEdit dans un fichier texte temporaire sur le disque. Documentation pour QFile est ici: http://doc.qt.io/qt-5/qfile.html
  2. Démarrer gcc à complie le fichier en utilisant QProcess et capturer la sortie dans une chaîne
  3. Remplacer le contenu du QTextEdit bas avec la sortie de la compilation.
  4. Regardez le code retour de QProcess pour voir si la compilation a réussi.
  5. Pour une génération réussie, invoquez à nouveau QProcess, cette fois pour l'exécutable qui a été créé par gcc pour exécuter le code, tout en ajoutant n'importe quelle sortie au bas QTextEdit.

REMARQUE: Comme un exercice cela est probablement va être amusant et amplement l'occasion d'apprendre, mais je doute que ce serait très utile sur lui-même.

Bonne chance!