1

我想用Carton安装 Net::SSh2 :我已经在本地安装了 libssh2-1.6.0。

导出所有必要的 LIBSSH2 变量

export LIBSSH2_INCLUDE=$HOME/lib/libssh2-1.6.0/include
export LIBSSH2_LIB=$HOME/lib/lib
export LIBSSH2_LDARGS="-lz"

然后打电话carton install

在这里,Carton 仍然抱怨找不到依赖项。

我不清楚为什么 Carton 看不到 Env 变量?

日志:

$ ~/.cpanm/work/1469440056.31412/Net-SSH2-0.62 $ perl Makefile.PL lib=$HOME/libssh2/lib inc=$HOME/libssh2/include \
> # 56         ldargs="-lz"

The libssh2 library is required by this module.  If you don't have it, you can
download it from http://www.libssh2.org; you may also need OpenSSL, which can
be obtained from http://www.openssl.org , or libgcrypt, which can be obtained
from http://www.gnupg.org .

Debian:   sudo aptitude install libssh2-1-dev
OpenSUSE: sudo zypper in libssh2-1 libssh2-devel

You can pass your libssh2 lib and include dirs (and extra link args) on the
command line. E.g.:

    perl Makefile.PL lib=$HOME/libssh2/lib inc=$HOME/libssh2/include \
        ldargs="-lz"

These can also be set through the LIBSSH2_LIB/LIBSSH2_INCLUDE/LIBSSH2_LDARGS
environment variables.
4

0 回答 0