1

当我尝试安装 Net::SSL 时,我得到以下输出。我一点也不明白。谁能在不涉及技术的情况下为我指出正确的方向?

C:\文档和设置\管理员>cpan
CPAN: File::HomeDir 加载正常 (v0.69)

cpan shell -- CPAN 探索和模块安装 (v1.9205)
已启用 ReadLine 支持


cpan> 安装网络::SSL
数据库于 2012 年 8 月 14 日星期二 14:54:56 GMT 生成
为模块“Net::SSL”运行安装
为 N/NA/NANIS/Crypt-SSLeay-0.64.tar.gz 运行 make
C:\strawberry\cpan\sources\authors\id\N\NA\NANIS\Crypt-SSLeay-0.64 的校验和。
tar.gz 好的
扫描缓存 C:\strawberry\cpan\build 的大小
..................................................... ..........................完毕


CPAN.pm:将构建 N/NA/NANIS/Crypt-SSLeay-0.64.tar.gz

测试套件可以尝试连接到公共服务器以确保
代码工作正常。如果您位于严格的防火墙之后或没有
网络连接,这些测试可能会失败(通过代码没有错误)。
是否要运行实时测试(是/否)?[N]
警告:BUILD_REQUIRES 不是已知参数。
检查您的套件是否完整...
看起来不错
警告:未找到先决条件 LWP::Protocol::https 6.02。
“BUILD_REQUIRES”不是已知的 MakeMaker 参数名称。
为 Crypt::SSLeay 编写 Makefile
cp lib/Crypt/SSLeay/X509.pm blib\lib\Crypt\SSLeay\X509.pm
cp lib/Net/SSL.pm blib\lib\Net\SSL.pm
cp SSLeay.pm blib\lib\Crypt\SSLeay.pm
cp lib/Crypt/SSLeay/Conn.pm blib\lib\Crypt\SSLeay\Conn.pm
cp lib/Crypt/SSLeay/CTX.pm blib\lib\Crypt\SSLeay\CTX.pm
cp lib/Crypt/SSLeay/MainContext.pm blib\lib\Crypt\SSLeay\MainContext.pm
cp lib/Crypt/SSLeay/Err.pm blib\lib\Crypt\SSLeay\Err.pm
C:\草莓\perl\bin\perl.exe C:\草莓\perl\lib\ExtUtils\xsubpp -typemap
C:\strawberry\perl\lib\ExtUtils\typemap -typemap typemap SSLeay.xs > SSLeay.xs
c && C:\strawberry\perl\bin\perl.exe -MExtUtils::Command -e mv SSLeay.xsc SSLeay
。C
gcc -c -IC:\strawberry\c\include -s -O2 -DWIN32 -DHAVE_DES_FCRYPT -DPERL_
IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -fno-strict-aliasing -DPERL_MSVCRT_READFIX
-s -O2 -DVERSION=\"0.64\" -DXS_VERSION=\"0.64\" "-IC:\strawberry\perl\lib
\核心" SSLeay.c
SSLeay.xs:35:25: openssl/ssl.h: 没有这样的文件或目录
SSLeay.xs:36:28: openssl/crypto.h: 没有这样的文件或目录
SSLeay.xs:37:25: openssl/err.h: 没有这样的文件或目录
SSLeay.xs:38:26: openssl/rand.h: 没有这样的文件或目录
SSLeay.xs:39:28: openssl/pkcs12.h: 没有这样的文件或目录
SSLeay.xs:55:错误:“*”标记之前的语法错误
SSLeay.xs:在函数“InfoCallback”中:
SSLeay.xs:60: error: `where' undeclared (第一次在这个函数中使用)
SSLeay.xs:60: 错误:(每个未声明的标识符只报告一次
SSLeay.xs:60:错误:对于它出现的每个函数。)
SSLeay.xs:60: error: `SSL_ST_MASK' undeclared (第一次在这个函数中使用)
SSLeay.xs:62: error: `SSL_ST_CONNECT' undeclared (首先在这个函数中使用)
SSLeay.xs:64: error: `SSL_ST_ACCEPT' undeclared (第一次在这个函数中使用)
SSLeay.xs:69: error: `SSL_CB_LOOP' undeclared (首先在这个函数中使用)
SSLeay.xs:70: error: `s' undeclared (第一次在这个函数中使用)
SSLeay.xs:72: error: `SSL_CB_ALERT' undeclared (首先在这个函数中使用)
SSLeay.xs:73:错误:“SSL_CB_READ”未声明(在此函数中首次使用)
SSLeay.xs:75: error: `ret' undeclared (第一次在这个函数中使用)
SSLeay.xs:78: 错误: `SSL_CB_EXIT' undeclared (首先在这个函数中使用)
SSLeay.c:在函数“XS_Crypt__SSLeay__CTX_new”中:
SSLeay.c:146: error: `SSL_CTX' undeclared (第一次在这个函数中使用)
SSLeay.c:在函数“XS_Crypt__SSLeay__CTX_use_pkcs12_file”中:
SSLeay.c:334: 错误: `SSL_CTX' undeclared (首先在这个函数中使用)
SSLeay.c:334: error: `ctx' undeclared (第一次在这个函数中使用)
SSLeay.xs:188: error: `EVP_PKEY' undeclared (first use in this function)
SSLeay.xs:188: error: `pkey' undeclared (第一次在这个函数中使用)
SSLeay.c:421: error: `ctx' undeclared (first use in this function)
SSLeay.c:646: error: `ssl' undeclared (第一次在这个函数中使用)
SSLeay.c:658: 错误: ')' 标记之前的语法错误

很多与上述类似的行

SSLeay.xs:505:错误:`->' 的无效类型参数
dmake.EXE:错误代码 129,同时制作“SSLeay.o”
NANIS/Crypt-SSLeay-0.64.tar.gz
C:\strawberry\c\bin\dmake.EXE -- 不行
运行 make 测试
没有成功就无法测试
运行 make install
Make 已返回错误状态,安装似乎不可能
在此命令期间失败:
NANIS/Crypt-SSLeay-0.64.tar.gz:不做
4

4 回答 4

4

我遇到了同样的问题,虽然我安装了openSSL包,但开发标头没有。我必须安装软件包libssl-dev。我使用Ubuntu 软件中心下载并安装了该软件包。或者,您可以sudo apt-get install libssl-dev从终端命令行使用。

这解决了我的问题,但对您使用 Windows 并没有真正的帮助。openSSL有一个指向 Windows 二进制文件的链接:OpenSSL for Windows

于 2014-01-03T03:41:27.013 回答
1

以下几行表明您可能尚未安装OpenSSL库/头文件,或者它位于 perl 不知道的位置。用你操作系统的包管理器安装,或者编译安装。

>SSLeay.xs:35:25: openssl/ssl.h: No such file or directory
>SSLeay.xs:36:28: openssl/crypto.h: No such file or directory
>SSLeay.xs:37:25: openssl/err.h: No such file or directory
>SSLeay.xs:38:26: openssl/rand.h: No such file or directory
>SSLeay.xs:39:28: openssl/pkcs12.h: No such file or directory

安装库/头文件后,cpan应该可以makeinstall Net::SSL.

于 2012-08-15T10:48:31.070 回答
-1

首先,我遇到了这样的问题:

mod_qos.c:83:26: error: openssl/rand.h: No such file or directory
mod_qos.c:84:25: error: openssl/evp.h:  No such file or directory

然后我使用了以下内容:

apxs -I/usr/local/openssl/include/openssl -i -c mod_qos.c -lcrypto -lpcre

成功了!为什么?

于 2014-08-27T06:28:20.880 回答
-1

通常CPAN通过安装所有依赖模块来为您解决这个问题。您面临的问题是此警告

WARNING: BUILD_REQUIRES is not a known parameter.

现在由于CPAN无法读取此参数,因此无法为您获取所有依赖模块,因此无法安装。

问题可能出在带有 cpan 实用程序的 perl-ExtUtils-MakeMaker 模块上。

您可能需要安装最新版本的 cpan 并尝试。或者如前所述,您可能希望在单独下载所有模块然后手动安装后安装它们。

于 2014-01-04T08:08:51.637 回答