Tach!
IO::Handle: bad open mode: O_CREAT at - line 4.
IO::File erbt von IO::Handle. Und IO::File implementiert sysopen, siehe also ebenda.
Ich sehe auch in der offiziellen Dokumentation, dass O_CREAT existiert. Aber davon allein geht der Fehler nicht weg. Die Frage lautet also, was die eigentliche Ursache für die Meldung ist oder sein könnte.
Perlversion? Und Deinen gesamten Code bitte!