2017-04-19 2 views

Antwort

0

Hier ist, was für mich gearbeitet hat.

ANNAHMEN

Sie haben in einem Verzeichnis C++ Datei eine kompilierte Sie finden können.

TLDR - Antwort auf meine eigene Frage

  1. Suchen Sie den Dateipfad zur C++ Datei kompiliert. ich Cloud9 wurde mit, so sah mein etwas wie folgt aus: /var/lib/cloud9/projectDirectory/

  2. den Befehl Identifizieren Sie die C++ Datei auszuführen. Ich hatte meins kompiliert, indem ich vom Terminal zum projectDirectory navigierte und g++ ain0.cpp -o ain0 eintippte. Um dies zu tun, würde ich ./ain0 in Terminal innerhalb von projectDirectory eingeben.

  3. Konfigurieren Sie den Knoten 'exec'. Platzieren Sie /usr/bin/sudo im Feld 'Befehl' (ich habe dies here gelernt). Deaktivieren Sie die Option zum Anhängen von msg.payload. Platzieren Sie /var/lib/cloud9/projectDirectory/./ain0 im Textfeld 'Anhängen'.

  4. Fertig!

Die obigen Schritte mir erlaubten einen Debug-Knoten zu verwenden (und später ein MQTT Knoten), die mit der ersten (obersten meist) Ausgabe der ‚exec‘ Knoten, die Werte zu ‚cout‘ übergeben zu erfassen in meinem C++ Programm. Wenn Sie die Informationen für den Knoten "exec" durchlesen, werden Sie bemerken, dass eine Eingabe erforderlich ist, um die Ausführung auszulösen. Ich habe einen 'inject'-Knoten verbunden und ihn so gesetzt, dass er den String-Wert' true 'ausgibt. Ich spielte ein wenig damit und stellte fest, dass es keine Rolle spielte, was der 'inject' an den 'exec' Knoten schickte. Ein Wert von Boolean funktionierte für mich genauso.