Как Квентин упоминается в его ответ , libssh2
- это библиотека C для SSH, тогда как Net::SSH2
- это модуль Perl. Поскольку Net::SSH2
будет установлен из источника (что и делает команда cpan
в фоновом режиме), вам необходимо убедиться, что установлены несколько предварительных условий:
sudo yum install libssh2 libssh2-devel gcc
Пакет libssh2
был добавлен в этот список для полноты. Требуется пакет разработки для libssh2
(libssh2-devel
), а также gcc
(компилятор C), поскольку процесс установки Net::SSH2
из исходного кода требует сборки библиотеки, чтобы Net::SSH2
мог общаться с ним. libssh2
.
Когда модули Perl устанавливаются из исходных кодов, по умолчанию запускается набор тестов модуля, чтобы проверить, что все в порядке, прежде чем фактически выполнить этап установки. Следовательно, вам необходимо убедиться, что установлен perl-Test-Simple
, поскольку Net::SSH2
использует его для запуска своих тестов:
sudo yum install perl-Test-Simple
Лично мне гораздо проще устанавливать модули Perl через cpanm
, чем cpan
, поэтому я рекомендую установить его (он доступен в виде пакета yum
):
sudo yum install perl-App-cpanminus
Теперь установка Net::SSH2
должна быть такой простой, как:
cpanm Net::SSH2
Если вы хотите установить модуль в масштабе всей системы, то вам нужно будет префикс cpanm
для вызова sudo
:
sudo cpanm Net::SSH2