我正在尝试修补一个程序来检查perl的可移植版本,如下所示:
use Config;
my $is_portable = $Config{userelocatableinc};
这不适用于Strawberry Perl,因此程序失败。
我使用的是Perl 5.20.1,64位:
>perl -V:userelocatableinc
userelocatableinc='undef';
我该怎么做才能找到当前的Perl是否是便携式的,不管是草莓吗?
答案 0 :(得分:2)
这就是你做的。 perl -V:userelocatableinc会告诉你它是否构建为使用相对路径。
草莓不是用这个选项构建的,所以它不便携。如果你需要这种支持,你必须自己构建它,虽然我知道ActiveState的perl有一些黑客可以使它可移植。
我考虑与草莓家伙一起出票,看看他们是否应该在他们的版本中添加这个选项。
答案 1 :(得分:-1)
这对我有用:
print "I'm portable" if eval 'require Portable';
Portable Strawberry Perl在供应商目录中附带了Portable.pm,其中增加了File :: Homedir等。