【问题标题】:libssh2 version 1.2.9 or higher required for set_timeout supportset_timeout 支持需要 libssh2 版本 1.2.9 或更高版本
【发布时间】:2017-03-14 18:02:53
【问题描述】:

我正在尝试在下面的 Perl 代码中使用 Net::SSH2,但出现此错误

test.pl 第 8 行的 set_timeout 支持需要 libssh2 版本 1.2.9 或更高版本。
1.2.566053SSH-2.0-libssh2_1.2.5
按任意键继续 。 . .

use strict;

use Net::SSH2;
#use Net::SSH2::Expect;

my $Hostname = 'xxxxxxxxxx';

my $ssh = Net::SSH2->new();

print $ssh->version();

$ssh->timeout( 10 );

#$ssh->connect( "xxxxxxxx" );

我可以看到我的 libssh2 版本是旧的。有人可以帮助我如何升级 libssh2 版本吗?

【问题讨论】:

  • 你使用的是什么操作系统?
  • @ThisSuitIsBlackNot : Windows 7
  • Net::SSH2 似乎不支持 Windows。你是怎么安装的?我建议你改用Net::SSH::Perl
  • 你用的是什么 Perl?最简单的方法可能是安装新版本的 Perl。我可以确认Strawberry Perl 的最新版本包括libssh-1.7.0,并且Net::SSH2 在其上构建和安装没有任何问题。
  • @Borodin : 我用过 cygwin

标签: windows perl windows-7 libssh2


【解决方案1】:

我强烈建议您使用本机 Windows 应用程序升级您的 Perl 版本。如果您安装最新版本的 Strawberry Perl(撰写本文时为 5.24.1.1),它包括 libssh2-1.7.0。然后它允许您成功构建、安装和使用Net::SSH2

这是您的代码的输出:

c:\>perl ssh.pl
1.7.067328SSH-2.0-libssh2_1.7.0

看起来好像它已经在构建中一段时间​​了,但如果你要升级,我会去最新最好的。

【讨论】:

  • 非常感谢大家:)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-28
  • 2020-12-11
  • 1970-01-01
  • 2015-05-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多