我正在尝试在我的Fedora 26机器上安装WWW :: Curl :: Easy
gcc -c -I/usr/include -D_REENTRANT -D_GNU_SOURCE -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -m64 -mtune=generic -fwrapv -fno-strict-aliasing -I/usr/local/include -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64 -g -DVERSION=\"4.17\" -DXS_VERSION=\"4.17\" -fPIC "-I/usr/lib64/perl5/CORE" Curl.c
Curl.xs: In function ‘fwrite_wrapper2’:
Curl.xs:363:13: warning: unused variable ‘sv’ [-Wunused-variable]
SV *sv;
^~
In file included from Curl.xs:574:0:
curlopt-constants.c: In function ‘constant’:
curlopt-constants.c:19:58: warning: ‘return’ with no value, in function returning non-void
if (strEQ(name, "DID_MEMORY_FUNC_TYPEDEFS")) return CURL_DID_MEMORY_FUNC_TYPEDEFS;
^~~~~~
curlopt-constants.c:2:1: note: declared here
constant(const char *name)
^~~~~~~~
curlopt-constants.c:130:49: error: ‘CURL_STRICTER’ undeclared (first use in this function); did you mean ‘PMf_STRICT’?
if (strEQ(name, "STRICTER")) return CURL_STRICTER;
^~~~~~~~~~~~~
PMf_STRICT
curlopt-constants.c:130:49: note: each undeclared identifier is reported only once for each function it appears in
curlopt-constants.c:2077:44: warning: overflow in implicit constant conversion [-Woverflow]
if (strEQ(name, "ANY")) return CURLAUTH_ANY;
^~~~~~~~~~~~
curlopt-constants.c:2078:48: warning: overflow in implicit constant conversion [-Woverflow]
if (strEQ(name, "ANYSAFE")) return CURLAUTH_ANYSAFE;
^~~~~~~~~~~~~~~~
我安装了curl
,curl-config
和curl-devel
。我已经尝试过在类似问题上找到的所有建议,但我无法解决这个问题。任何想法都赞赏。
答案 0 :(得分:1)
好的,这是我开始工作的方式:错误与CURL_STRICTER
有关,在MAKEFILE.pl
行中缺失了。我找到了this bug和this patch,因此我下载了WWW-Curl-4.17.tar.gz
并将其解压缩,并根据补丁更改了以下行:
if($e =~ /(OBSOLETE|^CURL_EXTERN|_LAST\z|_LASTENTRY\z)/) {
看起来像
if($e =~ /(OBSOLETE|^CURL_EXTERN|^CURL_STRICTER\z|_LAST\z|_LASTENTRY\z)/) {
之后我根据附带的自述文件安装它并且它可以工作。