当编码类型存储在变量中并使用PAR::Packer时,Windows上的Perl-Open函数失败
我有一个脚本,在使用Perl时运行良好,但在使用PAR::Packer将其转换为.exe并运行时失败(所有这些都在Windows上) 只有在存储编码类型以在变量中打开文件时,才会出现此问题。例如:当编码类型存储在变量中并使用PAR::Packer时,Windows上的Perl-Open函数失败,perl,perl-packager,Perl,Perl Packager,我有一个脚本,在使用Perl时运行良好,但在使用PAR::Packer将其转换为.exe并运行时失败(所有这些都在Windows上) 只有在存储编码类型以在变量中打开文件时,才会出现此问题。例如: my $enc= "utf8"; open my $FH, "<:encoding( $enc )", $ARGV[0] or die "$!"; my$enc=“utf8”; 打开我的$FH,“我可以确认这个问题也发生在Ubuntu 19.10和perl 5.30上。我得到的错误是:U
my $enc= "utf8";
open my $FH, "<:encoding( $enc )", $ARGV[0]
or die "$!";
my$enc=“utf8”;
打开我的$FH,“我可以确认这个问题也发生在Ubuntu 19.10和perl 5.30上。我得到的错误是:Unknown PerlIO layer“encoding”
。如果我直接运行脚本,就不会有错误。也许你需要强制包含PerlIO::encoding?(从未使用过PAR::Packer,所以我不确定该语句是否有意义。)我可以确认这个问题也发生在Ubuntu 19.10和perl 5.30上。我得到的错误是:Unknown PerlIO layer“encoding”
。如果我直接运行脚本,就不会有错误。也许你需要强制包含PerlIO::encoding?(从未使用过PAR::Packer,所以我不确定该语句是否有意义。)