使用SFTP perl模块的问题

时间:2013-06-12 22:39:58

标签: perl

我正在尝试在Perl中使用SFTP模块。我的代码看起来像这样:

#!/usr/local/bin/perl5 

use lib "/some_path/Net-SFTP-0.10/lib";
use lib "/some_path/Net-SSH-Perl-1.25/lib";
use lib "/some_path/Math-Pari-2.010709";

use Net::SFTP;

运行时出现此错误:

Can't locate Math/Pari.pm in @INC

Math-Pari-2.010709目录包含Pari.pm.我没有权限创建一个Math目录并将Pari.pm文件放在那里。我该怎么做才能解决这个问题?

2 个答案:

答案 0 :(得分:2)

我使用local::lib并将$PERL5LIB设置为$HOME/perl5,因此构建和安装缺少的模块非常简单:

% cpanm Math::Pari
--> Working on Math::Pari
Fetching http://www.cpan.org/authors/id/I/IL/ILYAZ/modules/Math-Pari-2.01080605.tar.gz ... OK
Configuring Math-Pari-2.01080605 ... OK
Building and testing Math-Pari-2.01080605 ... 
Successfully installed Math-Pari-2.01080605
1 distribution installed

您需要按照App::cpanminus上的说明安装https://github.com/miyagawa/cpanminus,这些说明基本上是:

curl -L http://cpanmin.us | perl - App::cpanminus

之后cpanm中的$PATH(此处位于$HOME/perl5/bin中)在您自己的 $ HOME 目录中安装模块是轻而易举的。

答案 1 :(得分:2)

发表评论后,我最终使用了Net::SFTP::Foreign。完成任务就足够了,更少的依赖关系使我的生活变得更轻松。谢谢你的帮助!