I'm not familiar with 5.6 (come on, 5.6.0 is 11 years old, in the world of software engineering that's like half a century), but if IO layers don't work, maybe Encode::decode works.
| [reply] |
open my $fh, '<:utf8', $filename or die $!; should work for you. | [reply] [d/l] |
To my (fuzzy) recollection, PerlIO wasn't used in 5.6 unless you explicitly selected to compile it in. It was still experimental. The same reason one doesn't work should prevent the other from working. I could very well be wrong, so I look forward to hearing why you think it should work.
In the meantime, 5.6 is being installed :) (Upd: IPC::SysV fails, and I'll too lazy to address that. )
| [reply] |
From Perl 5.6.2's Configure:
Previous version of perl5 used the standard IO mechanisms as defined
in <stdio.h>. Versions 5.003_02 and later of perl allow alternate IO
mechanisms via a "PerlIO" abstraction, but the stdio mechanism is still
the default. This abstraction layer can use AT&T's sfio (if you already
have sfio installed) or regular stdio. Using PerlIO with sfio may cause
problems with some extension modules. Using PerlIO with stdio is safe,
but it is slower than plain stdio and therefore is not the default.
If this doesn't make any sense to you, just accept the default 'n'.
Use the experimental PerlIO abstraction layer? [n]
The default build doesn't support PerlIO, and thus doesn't support PerlIO layers (e.g. :encoding, :utf8, etc).
| [reply] |
Unknown open() mode '<:utf8' at ...
| [reply] [d/l] |