2010-02-14 10 views
5

ich die folgende Fehlermeldung, wenn ich versuche, mein Programm zu kompilieren:Aufruf fdopen: Bad Dateideskriptors

calling fdopen: Bad file descriptor

ich gelesen habe dies ein Problem in einem eine vorkompilierte Header einschließlich in Zusammenhang stehen könnte von meine Headerdateien. Die Datei, die den Fehler verursacht, enthält den stdio.h-Header, damit ich Zugriff auf den FILE-Typ habe. Wenn ich das entferne, verschwindet der Fehler, aber ich kann den DATEI-Typ nicht verwenden. Weiß jemand, wie ich das beheben kann?

+4

Versuchen Sie, das Problem in ein blankes Programm zu isolieren (-i.e., Eine neue separate Datei mit einem Hauptcode darin und nur der Code, der fehlschlägt). Dann aktualisiere deine Frage. Wir können kein Feedback ohne Code geben. –

+1

Können Sie den einfachsten eigenständigen Code posten, der das Problem reproduziert, das Sie gerade erleben? –

+0

Welche Version von gcc? – bmargulies

Antwort

0

Sorry, ich vergaß, nur sind die Header-Datei stdio.h Diese häufig als Fehler gegen GCC berichtet. Ich fühle mich jetzt irgendwie dumm.

6

Schwer zu sagen, ohne Details, aber es ist in der Tat höchstwahrscheinlich aufgrund eines veralteten vorkompilierten Headers. Entfernen Sie alle .gch Dateien und versuchen Sie es erneut.

wird, finden Sie in der Bugzilla-Eintrag here

+1

Danke, das war mein Problem. – Derrick