2017-09-13 28 views
1

我在我的PC上安装了两个Perl版本,即5.12.35.16.3。要安装P4Perl API,我需要在Path中设置Perl 5.16.3的位置(否则我得到一个P4Perl API安装程序错误),并且在成功运行安装后,我搜索了P4.pm模块,并注意到P4.pm模块的安装是在5.12.3安装的文件夹中完成。Perforce P4Perl Api安装在错误的目录中

正如你可以在标题中看到,安装了Perl的5.16
enter image description here
完成,但如果我搜索P4.pm,它位于5123文件夹(这是coresponding到Perl 5.12.3 enter image description here
即使更多的,当我尝试运行一个简单的脚本,只导入了P4.pm模块:
-with Perl 5.16.3它抱怨缺少P4.pm模块
-with Perl 5.12.3其并发症关于丢失perl516.dll,我可以找到与Everything安装Perl 5.16.3

enter image description here

在此之后,我还以为要移动的安装在5.12.3安装到5.16.3安装的内容,就像@Gerhard建议。现在它起作用了。有谁知道它为什么会在安装时混乱?

即使这些文件是物理存在的。

+1

为什么不把模块目录复制到相关文件夹/ site/lib和/ lib –

+0

@GerhardBarnard我只是这么做的,请检查我的更新。 –

+1

@GerhardBarnard在我移动你建议的文件夹后,我错过了一些文件,现在它在'5.16.3'上工作。但它仍然令人困惑,可能造成这种情况。 –

回答

2

将模块文件的目录复制到<PATH_TO_PERL>/lib<PATH_TO_PERL>/site/lib以解决该问题。

Perl模块几乎总是存在的/lib/DIR/DIR/Module.pm 例如C:\perl64\lib\Date\Simple\date.pm 如果文件存在于自己的存在与模块安装本身有问题。或者,在某个地方有一个到旧的perl版本目录的路径引用。

要查看perl的路径默认情况下使用,这样做:

perl -e "print $^X" 

希望有点帮助。

+0

那么,默认指向右边的'5.16.3'安装路径,但正如你所提到的,也许某处有一个旧的参考'5.12.3'安装路径。谢谢你的回答,格哈德。 –