2017-09-21 4 views
0

Ich versuche this C++ example von Tensorflow ausführen. Es kompiliert und ich bekomme keine Fehlermeldung während des Programmlaufs. Leider bekomme ich auch keine Ausgabe im Terminal. Die Hauptfunktion ruft die Funktion PrintTopLabels(outputs, labels) auf, um die Ergebnisse zu drucken. Beim Lesen schreibt die Funktion alle Nachrichten in ein Objekt LOG(INFO). Aber ich kann keine Erklärung finden, was das genau macht.Was macht LOG (INFO) und LOG (ERROR)?

Was fehlt mir hier? Warum kann ich keine Ausgabe bekommen?

Ich habe einige std::cout Nachrichten hinzugefügt, die angezeigt werden, wenn ich das Programm starte.

+0

Das ist wahrscheinlich ein Makro, und wenn es ist, ist es in einer Header-Datei definiert. Schlag es nach. – tadman

+0

Sie betrachten eine Datei von vielen. Die LOG-Makros sind [hier] definiert (https://github.com/tensorflow/tensorflow/blob/master/tensorflow/core/platform/default/logging.h). –

Antwort

0

Sie sind Teil der Glog-Bibliothek. Sie können die Nachrichten auf stderr drucken, indem Sie die GLOG_alsologtostderr Umgebungsvariable definieren, wenn Sie Ihr Programm ausführen ...

$ GLOG_alsologtostderr=1 ./<your_program_name> 

Außerdem, wenn Ihr Programm mit der Gflags Bibliothek aufgebaut ist, können Sie einen Befehlszeile-Flag stattdessen passieren können .. .

$ ./<your_program_name> --alsologtostderr 
+0

Gibt es auch eine Möglichkeit, dies bereits im Code festzulegen? – Jonas