我想用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.