Samstag, 6. Januar 2018

Was tun bei "read from master failed : Input/output error" (Netbeans)

Getestet mit Netbeans 8.0.1

Programmieranfänger, die Netbeans zum Erlernen der C/C++ Programmierung nutzen stehen anfangs vor dem Problem, dass ein sorgsam aus einem Buch abgetippter Code einfach nicht laufen will. Mit Cygwin gehts, Netbeans weigert sich.

Lösung:

Der häufig verwendete Quellcode weist für einige moderne Compiler Probleme auf:
Wichtige Headerdateien fehlen, so kennt der Compiler zum Beispiel die Funktion printf noch nicht.
Setze also an den Beginn des Quellcodes die folgende beiden Zeilen:

#include <stdio.h>
#include <stdlib.h>




In unserem Fall wäre <stdlib.h> nicht zwingend erforderlich, ich habe es mir jedoch angewöhnt diese beiden Bibliotheken in mein "Standard-Dateigerüst" aufzunehmen.

Drücken wir nun nacheinander  F11 ("Build Project") und F6 ("Run Project"), erhalten wir folgende Fehlermeldung

Hallo Welt 
read from master failed
                       : Input/output error

RUN FAILED (exit value 1, total time: 324ms)

Offensichtlich hat die Ausgabe funktioniert, aber Netbeans passt irgendetwas noch nicht. Es handelt sich hierbei um den Bug 25217. Ein Workaround ist das Ändern der Konfugration der Entwicklungsumgebung:
  1. Klicke mit rechts auf den Projektnamen
  2. Wähle den Menüpunkt "Properties"
  3. In den "Categories" wähle "Run"
  4. Ändere den "Console Typ" von "Internal Type" zu "Standard Output"
  5. Schließe den Dialog mit OK

Ein erneuter Test mit  dem Aufruf von Build und Run zeigt die Ausgabe mit dem Hinweis "RUN FAILED (exit value 10, total time: 52ms)" .

Lösung: Wir lassen die Funktion etwas zurückliefern, und zwar 0. Dazu ändern wir unseren Quellcode nochmals:


Ergebnis: "RUN SUCCESSFUL (total time: 51ms)"

Das war's  auch schon ;)

Literaturtipp:


Keine Kommentare: