错误在构建 WWW::Curl 模块 v4.17 和 Strawberry Perl v5.32.1 时发生。

huangapple go评论106阅读模式
英文:

Error when I building WWW::Curl module v4.17 and Strawberry Perl v5.32.1

问题

这些错误可能是由于编译器未找到所需的库或其他问题引起的。特别是这两行警告:

  1. Warning (mostly harmless): No library found for -lcurl
  2. Warning (mostly harmless): No library found for -lcurldll

这表明编译器在链接过程中找不到名为"libcurl"和"libcurldll"的库文件。这可能是由于缺少curl库或未正确配置库路径引起的。要解决这些错误,您可以考虑以下步骤:

  1. 安装Curl库:确保已经安装了Curl库。您可以从Curl官方网站或其他可靠的资源获取最新版本。安装后,确保库文件位于系统路径中。

  2. 配置库路径:如果已安装Curl库但编译器仍然找不到它,您可能需要配置库路径。这可以通过设置LIB环境变量来完成,以指向包含Curl库的目录。

  3. 检查Perl环境:确保您的Strawberry Perl环境正确配置,并且与Curl库兼容。有时,不同版本的Perl和Curl库之间可能存在不兼容性。

  4. 查看编译选项:检查Makefile.PL文件或编译选项,确保它们正确设置为与您的环境匹配。这包括检查是否设置了正确的库路径和链接选项。

  5. 查找依赖项:检查WWW::Curl模块是否依赖于其他Perl模块或库。如果是这样,确保这些依赖项也已正确安装和配置。

  6. 查看Curl模块文档:查看WWW::Curl模块的文档,看是否有特定于安装的说明或建议。

如果您仍然遇到问题,您可能需要在相关Perl和Curl社区中查找解决方案,或者在安装过程中记录更多详细信息以获得更具体的帮助。希望这些步骤能帮助您解决问题。

英文:

I'm trying to install the WWW::Curl module for strawberry perl.All versions of the modules are the latest.
All instructions from here there is a person with a similar problem were followed by me.

When I run Makefile.PL, at the command prompt, I get this messages:

  1. C:\WWW-Curl-4.17>Makefile.PL
  2. The version is
  3. Found curl.h in c:/curl/include/curl/curl.h
  4. Building curlopt-constants.c for your libcurl version
  5. Building Easy.pm constants for your libcurl version
  6. Building Share.pm constants for your libcurl version
  7. Checking if your kit is complete...
  8. Looks good
  9. Warning (mostly harmless): No library found for -lcurl
  10. Warning (mostly harmless): No library found for -lcurldll
  11. Generating a gmake-style Makefile
  12. Writing Makefile for WWW::Curl
  13. Writing MYMETA.yml and MYMETA.json

After, when I run gmake I get this errors:

  1. C:\WWW-Curl-4.17>gmake
  2. cp lib/WWW/Curl/Easy.pm blib\lib\WWW\Curl\Easy.pm
  3. cp lib/WWW/Curl/Multi.pm blib\lib\WWW\Curl\Multi.pm
  4. cp lib/WWW/Curl.pm blib\lib\WWW\Curl.pm
  5. cp lib/WWW/Curl/Share.pm blib\lib\WWW\Curl\Share.pm
  6. cp lib/WWW/Curl/Form.pm blib\lib\WWW\Curl\Form.pm
  7. Running Mkbootstrap for Curl ()
  8. "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command -e chmod -- 644 "Curl.bs"
  9. "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command::MM -e cp_nonempty -- Curl.bs blib\arch\auto\WWW\Curl\Curl.bs 644
  10. "C:\Strawberry\perl\bin\perl.exe" "-Iinc" "C:\Strawberry\perl\site\lib\ExtUtils/xsubpp" -typemap C:\Strawberry\perl\lib\ExtUtils\typemap -typemap C:\WWW-Curl-4.17\typemap Curl.xs > Curl.xsc
  11. "C:\Strawberry\perl\bin\perl.exe" "-Iinc" -MExtUtils::Command -e mv -- Curl.xsc Curl.c
  12. gcc -c -Ic:/curl/include -DWIN32 -DWIN64 -D__USE_MINGW_ANSI_STDIO -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -fwrapv -fno-strict-aliasing -mms-bitfields -s -O2 -DVERSION=\"4.17\" -DXS_VERSION=\"4.17\" "-IC:\Strawberry\perl\lib\CORE" Curl.c
  13. Curl.xs:76:12: error: expected '{' before 'void'
  14. struct void *curlm;
  15. ^~~~
  16. Curl.xs:76:12: error: two or more data types in declaration specifiers
  17. In file included from Curl.xs:14:
  18. Curl.xs: In function 'perl_curl_multi_new':
  19. C:\Strawberry\perl\lib\CORE/handy.h:2479:25: warning: division by zero [-Wdiv-by-zero]
  20. MEM_SIZE_MAX/sizeof(t)) > MEM_SIZE_MAX/sizeof(t))
  21. ^
  22. C:\Strawberry\perl\lib\CORE/perl.h:3650:62: note: in definition of macro 'EXPECT'
  23. # define EXPECT(expr,val) __builtin_expect(expr,val)
  24. ^~~~
  25. C:\Strawberry\perl\lib\CORE/perl.h:3671:52: note: in expansion of macro 'cBOOL'
  26. #define UNLIKELY(cond) EXPECT(cBOOL(cond),FALSE)
  27. ^~~~~
  28. C:\Strawberry\perl\lib\CORE/handy.h:2482:9: note: in expansion of macro 'UNLIKELY'
  29. (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \
  30. ^~~~~~~~
  31. C:\Strawberry\perl\lib\CORE/handy.h:2482:18: note: in expansion of macro '_MEM_WRAP_WILL_WRAP'
  32. (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \
  33. ^~~~~~~~~~~~~~~~~~~
  34. C:\Strawberry\perl\lib\CORE/handy.h:2494:30: note: in expansion of macro 'MEM_WRAP_CHECK'
  35. #define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t),
  36. ^~~~~~~~~~~~~~
  37. C:\Strawberry\perl\lib\CORE/handy.h:2577:28: note: in expansion of macro 'MEM_WRAP_CHECK_'
  38. #define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t,safecalloc((n),sizeof(t)))))
  39. ^~~~~~~~~~~~~~~
  40. C:\Strawberry\perl\lib\CORE/handy.h:2583:23: note: in expansion of macro 'Newxz'
  41. #define Newz(x,v,n,t) Newxz(v,n,t)
  42. ^~~~~
  43. Curl.xs:236:5: note: in expansion of macro 'Newz'
  44. Newz(1, self, 1, perl_curl_multi);
  45. ^~~~
  46. C:\Strawberry\perl\lib\CORE/handy.h:2479:51: warning: division by zero [-Wdiv-by-zero]
  47. MEM_SIZE_MAX/sizeof(t)) > MEM_SIZE_MAX/sizeof(t))
  48. ^
  49. C:\Strawberry\perl\lib\CORE/perl.h:3650:62: note: in definition of macro 'EXPECT'
  50. # define EXPECT(expr,val) __builtin_expect(expr,val)
  51. ^~~~
  52. C:\Strawberry\perl\lib\CORE/perl.h:3671:52: note: in expansion of macro 'cBOOL'
  53. #define UNLIKELY(cond) EXPECT(cBOOL(cond),FALSE)
  54. ^~~~~
  55. C:\Strawberry\perl\lib\CORE/handy.h:2482:9: note: in expansion of macro 'UNLIKELY'
  56. (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \
  57. ^~~~~~~~
  58. C:\Strawberry\perl\lib\CORE/handy.h:2482:18: note: in expansion of macro '_MEM_WRAP_WILL_WRAP'
  59. (void)(UNLIKELY(_MEM_WRAP_WILL_WRAP(n,t)) \
  60. ^~~~~~~~~~~~~~~~~~~
  61. C:\Strawberry\perl\lib\CORE/handy.h:2494:30: note: in expansion of macro 'MEM_WRAP_CHECK'
  62. #define MEM_WRAP_CHECK_(n,t) MEM_WRAP_CHECK(n,t),
  63. ^~~~~~~~~~~~~~
  64. C:\Strawberry\perl\lib\CORE/handy.h:2577:28: note: in expansion of macro 'MEM_WRAP_CHECK_'
  65. #define Newxz(v,n,t) (v = (MEM_WRAP_CHECK_(n,t) (t*)MEM_LOG_ALLOC(n,t,safecalloc((n),sizeof(t)))))
  66. ^~~~~~~~~~~~~~~
  67. C:\Strawberry\perl\lib\CORE/handy.h:2583:23: note: in expansion of macro 'Newxz'
  68. #define Newz(x,v,n,t) Newxz(v,n,t)
  69. ^~~~~
  70. Curl.xs:236:5: note: in expansion of macro 'Newz'
  71. Newz(1, self, 1, perl_curl_multi);
  72. ^~~~
  73. In file included from Curl.xs:574:
  74. curlopt-constants.c: In function 'constant':
  75. curlopt-constants.c:19:51: error: 'CURL_DEPRECATED' undeclared (first use in this function); did you mean 'CURLOPT_PRIVATE'?
  76. if (strEQ(name, "DEPRECATED")) return CURL_DEPRECATED;
  77. ^~~~~~~~~~~~~~~
  78. CURLOPT_PRIVATE
  79. curlopt-constants.c:19:51: note: each undeclared identifier is reported only once for each function it appears in
  80. curlopt-constants.c:20:58: warning: 'return' with no value, in function returning non-void
  81. if (strEQ(name, "DID_MEMORY_FUNC_TYPEDEFS")) return CURL_DID_MEMORY_FUNC_TYPEDEFS;
  82. ^~~~~~
  83. curlopt-constants.c:2:1: note: declared here
  84. constant(const char *name)
  85. ^~~~~~~~
  86. curlopt-constants.c:67:59: error: 'CURL_IGNORE_DEPRECATION' undeclared (first use in this function); did you mean 'CURLINFO_REDIRECT_TIME'?
  87. if (strEQ(name, "IGNORE_DEPRECATION")) return CURL_IGNORE_DEPRECATION;
  88. ^~~~~~~~~~~~~~~~~~~~~~~
  89. CURLINFO_REDIRECT_TIME
  90. curlopt-constants.c:129:51: warning: overflow in conversion from 'long long unsigned int' to 'int' changes value from '18446744073709551615' to '-1' [-Woverflow]
  91. if (strEQ(name, "SOCKET_BAD")) return CURL_SOCKET_BAD;
  92. ^~~~~~~~~~~~~~~
  93. curlopt-constants.c:147:49: error: 'CURL_STRICTER' undeclared (first use in this function); did you mean 'CURLH_TRAILER'?
  94. if (strEQ(name, "STRICTER")) return CURL_STRICTER;
  95. ^~~~~~~~~~~~~
  96. CURLH_TRAILER
  97. curlopt-constants.c:196:39: warning: 'return' with no value, in function returning non-void
  98. if (strEQ(name, "WIN32")) return CURL_WIN32;
  99. ^~~~~~
  100. curlopt-constants.c:2:1: note: declared here
  101. constant(const char *name)
  102. ^~~~~~~~
  103. In file included from Curl.xs:17:
  104. c:/curl/include/curl/curl.h:2366:30: warning: overflow in conversion from 'long long unsigned int' to 'int' changes value from '18446744073709551615' to '-1' [-Woverflow]
  105. #define CURL_ZERO_TERMINATED ((size_t) -1)
  106. ^
  107. curlopt-constants.c:203:56: note: in expansion of macro 'CURL_ZERO_TERMINATED'
  108. if (strEQ(name, "ZERO_TERMINATED")) return CURL_ZERO_TERMINATED;
  109. ^~~~~~~~~~~~~~~~~~~~
  110. In file included from Curl.xs:574:
  111. curlopt-constants.c:2005:40: warning: 'return' with no value, in function returning non-void
  112. if (strEQ(name, "CURL_H")) return CURLINC_CURL_H;
  113. ^~~~~~
  114. curlopt-constants.c:2:1: note: declared here
  115. constant(const char *name)
  116. ^~~~~~~~
  117. curlopt-constants.c:2814:48: error: 'CURLOPT' undeclared (first use in this function); did you mean 'CURLSH'?
  118. if (strEQ(name, "CURLOPT")) return CURLOPT;
  119. ^~~~~~~
  120. CURLSH
  121. curlopt-constants.c:2815:58: error: 'CURLOPTDEPRECATED' undeclared (first use in this function); did you mean 'CURLOPT_PRIVATE'?
  122. if (strEQ(name, "CURLOPTDEPRECATED")) return CURLOPTDEPRECATED;
  123. ^~~~~~~~~~~~~~~~~
  124. CURLOPT_PRIVATE
  125. In file included from Curl.xs:17:
  126. Curl.xs: In function 'XS_WWW__Curl__Easy_init':
  127. C:\Strawberry\perl\lib\CORE/XSUB.h:578:20: error: 'PerlSIO_fread' undeclared (first use in this function); did you mean 'PerlIO_read'?
  128. # define fread PerlSIO_fread
  129. ^~~~~~~~~~~~~
  130. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  131. #define CURL_IGNORE_DEPRECATION(statements) statements
  132. ^~~~~~~~~~
  133. c:/curl/include/curl/typecheck-gcc.h:543:4: note: in expansion of macro 'curlcheck_cb_compatible'
  134. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  135. ^~~~~~~~~~~~~~~~~~~~~~~
  136. c:/curl/include/curl/typecheck-gcc.h:543:47: note: in expansion of macro 'fread'
  137. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  138. ^~~~~
  139. c:/curl/include/curl/typecheck-gcc.h:560:4: note: in expansion of macro 'curlcheck_read_cb'
  140. (curlcheck_read_cb(expr) || \
  141. ^~~~~~~~~~~~~~~~~
  142. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  143. if(!curlcheck_write_cb(value)) \
  144. ^~~~~~~~~~~~~~~~~~
  145. Curl.xs:627:9: note: in expansion of macro 'curl_easy_setopt'
  146. curl_easy_setopt(self->curl, CURLOPT_WRITEFUNCTION, write_callback_func);
  147. ^~~~~~~~~~~~~~~~
  148. C:\Strawberry\perl\lib\CORE/XSUB.h:579:21: error: 'PerlSIO_fwrite' undeclared (first use in this function); did you mean 'PerlIO_write'?
  149. # define fwrite PerlSIO_fwrite
  150. ^~~~~~~~~~~~~~
  151. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  152. #define CURL_IGNORE_DEPRECATION(statements) statements
  153. ^~~~~~~~~~
  154. c:/curl/include/curl/typecheck-gcc.h:561:4: note: in expansion of macro 'curlcheck_cb_compatible'
  155. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  156. ^~~~~~~~~~~~~~~~~~~~~~~
  157. c:/curl/include/curl/typecheck-gcc.h:561:47: note: in expansion of macro 'fwrite'
  158. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  159. ^~~~~~
  160. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  161. if(!curlcheck_write_cb(value)) \
  162. ^~~~~~~~~~~~~~~~~~
  163. Curl.xs:627:9: note: in expansion of macro 'curl_easy_setopt'
  164. curl_easy_setopt(self->curl, CURLOPT_WRITEFUNCTION, write_callback_func);
  165. ^~~~~~~~~~~~~~~~
  166. Curl.xs: In function 'XS_WWW__Curl__Easy_duphandle':
  167. C:\Strawberry\perl\lib\CORE/XSUB.h:578:20: error: 'PerlSIO_fread' undeclared (first use in this function); did you mean 'PerlIO_read'?
  168. # define fread PerlSIO_fread
  169. ^~~~~~~~~~~~~
  170. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  171. #define CURL_IGNORE_DEPRECATION(statements) statements
  172. ^~~~~~~~~~
  173. c:/curl/include/curl/typecheck-gcc.h:543:4: note: in expansion of macro 'curlcheck_cb_compatible'
  174. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  175. ^~~~~~~~~~~~~~~~~~~~~~~
  176. c:/curl/include/curl/typecheck-gcc.h:543:47: note: in expansion of macro 'fread'
  177. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  178. ^~~~~
  179. c:/curl/include/curl/typecheck-gcc.h:560:4: note: in expansion of macro 'curlcheck_read_cb'
  180. (curlcheck_read_cb(expr) || \
  181. ^~~~~~~~~~~~~~~~~
  182. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  183. if(!curlcheck_write_cb(value)) \
  184. ^~~~~~~~~~~~~~~~~~
  185. Curl.xs:658:9: note: in expansion of macro 'curl_easy_setopt'
  186. curl_easy_setopt(clone->curl, CURLOPT_WRITEFUNCTION, write_callback_func);
  187. ^~~~~~~~~~~~~~~~
  188. C:\Strawberry\perl\lib\CORE/XSUB.h:579:21: error: 'PerlSIO_fwrite' undeclared (first use in this function); did you mean 'PerlIO_write'?
  189. # define fwrite PerlSIO_fwrite
  190. ^~~~~~~~~~~~~~
  191. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  192. #define CURL_IGNORE_DEPRECATION(statements) statements
  193. ^~~~~~~~~~
  194. c:/curl/include/curl/typecheck-gcc.h:561:4: note: in expansion of macro 'curlcheck_cb_compatible'
  195. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  196. ^~~~~~~~~~~~~~~~~~~~~~~
  197. c:/curl/include/curl/typecheck-gcc.h:561:47: note: in expansion of macro 'fwrite'
  198. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  199. ^~~~~~
  200. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  201. if(!curlcheck_write_cb(value)) \
  202. ^~~~~~~~~~~~~~~~~~
  203. Curl.xs:658:9: note: in expansion of macro 'curl_easy_setopt'
  204. curl_easy_setopt(clone->curl, CURLOPT_WRITEFUNCTION, write_callback_func);
  205. ^~~~~~~~~~~~~~~~
  206. Curl.xs: In function 'XS_WWW__Curl__Easy_setopt':
  207. C:\Strawberry\perl\lib\CORE/XSUB.h:578:20: error: 'PerlSIO_fread' undeclared (first use in this function); did you mean 'PerlIO_read'?
  208. # define fread PerlSIO_fread
  209. ^~~~~~~~~~~~~
  210. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  211. #define CURL_IGNORE_DEPRECATION(statements) statements
  212. ^~~~~~~~~~
  213. c:/curl/include/curl/typecheck-gcc.h:543:4: note: in expansion of macro 'curlcheck_cb_compatible'
  214. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  215. ^~~~~~~~~~~~~~~~~~~~~~~
  216. c:/curl/include/curl/typecheck-gcc.h:543:47: note: in expansion of macro 'fread'
  217. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  218. ^~~~~
  219. c:/curl/include/curl/typecheck-gcc.h:560:4: note: in expansion of macro 'curlcheck_read_cb'
  220. (curlcheck_read_cb(expr) || \
  221. ^~~~~~~~~~~~~~~~~
  222. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  223. if(!curlcheck_write_cb(value)) \
  224. ^~~~~~~~~~~~~~~~~~
  225. Curl.xs:717:3: note: in expansion of macro 'curl_easy_setopt'
  226. curl_easy_setopt(self->curl, CURLOPT_HEADERFUNCTION, SvOK(value) ? header_callback_func : NULL);
  227. ^~~~~~~~~~~~~~~~
  228. C:\Strawberry\perl\lib\CORE/XSUB.h:579:21: error: 'PerlSIO_fwrite' undeclared (first use in this function); did you mean 'PerlIO_write'?
  229. # define fwrite PerlSIO_fwrite
  230. ^~~~~~~~~~~~~~
  231. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  232. #define CURL_IGNORE_DEPRECATION(statements) statements
  233. ^~~~~~~~~~
  234. c:/curl/include/curl/typecheck-gcc.h:561:4: note: in expansion of macro 'curlcheck_cb_compatible'
  235. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  236. ^~~~~~~~~~~~~~~~~~~~~~~
  237. c:/curl/include/curl/typecheck-gcc.h:561:47: note: in expansion of macro 'fwrite'
  238. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  239. ^~~~~~
  240. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  241. if(!curlcheck_write_cb(value)) \
  242. ^~~~~~~~~~~~~~~~~~
  243. Curl.xs:717:3: note: in expansion of macro 'curl_easy_setopt'
  244. curl_easy_setopt(self->curl, CURLOPT_HEADERFUNCTION, SvOK(value) ? header_callback_func : NULL);
  245. ^~~~~~~~~~~~~~~~
  246. Curl.xs: In function 'XS_WWW__Curl__Multi_info_read':
  247. Curl.xs:1091:45: error: 'perl_curl_multi' {aka 'struct <anonymous>'} has no member named 'curlm'
  248. while ((msg = curl_multi_info_read(self->curlm, &queue))) {
  249. ^~
  250. In file included from Curl.xs:17:
  251. C:\Strawberry\perl\lib\CORE/XSUB.h:578:20: error: 'PerlSIO_fread' undeclared (first use in this function); did you mean 'PerlIO_read'?
  252. # define fread PerlSIO_fread
  253. ^~~~~~~~~~~~~
  254. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  255. #define CURL_IGNORE_DEPRECATION(statements) statements
  256. ^~~~~~~~~~
  257. c:/curl/include/curl/typecheck-gcc.h:543:4: note: in expansion of macro 'curlcheck_cb_compatible'
  258. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  259. ^~~~~~~~~~~~~~~~~~~~~~~
  260. c:/curl/include/curl/typecheck-gcc.h:543:47: note: in expansion of macro 'fread'
  261. curlcheck_cb_compatible((expr), __typeof__(fread) *) || \
  262. ^~~~~
  263. c:/curl/include/curl/typecheck-gcc.h:560:4: note: in expansion of macro 'curlcheck_read_cb'
  264. (curlcheck_read_cb(expr) || \
  265. ^~~~~~~~~~~~~~~~~
  266. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  267. if(!curlcheck_write_cb(value)) \
  268. ^~~~~~~~~~~~~~~~~~
  269. Curl.xs:1100:3: note: in expansion of macro 'curl_easy_setopt'
  270. curl_easy_setopt(easy, CURLINFO_PRIVATE, NULL);
  271. ^~~~~~~~~~~~~~~~
  272. C:\Strawberry\perl\lib\CORE/XSUB.h:579:21: error: 'PerlSIO_fwrite' undeclared (first use in this function); did you mean 'PerlIO_write'?
  273. # define fwrite PerlSIO_fwrite
  274. ^~~~~~~~~~~~~~
  275. c:/curl/include/curl/curl.h:50:49: note: in definition of macro 'CURL_IGNORE_DEPRECATION'
  276. #define CURL_IGNORE_DEPRECATION(statements) statements
  277. ^~~~~~~~~~
  278. c:/curl/include/curl/typecheck-gcc.h:561:4: note: in expansion of macro 'curlcheck_cb_compatible'
  279. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  280. ^~~~~~~~~~~~~~~~~~~~~~~
  281. c:/curl/include/curl/typecheck-gcc.h:561:47: note: in expansion of macro 'fwrite'
  282. curlcheck_cb_compatible((expr), __typeof__(fwrite) *) || \
  283. ^~~~~~
  284. c:/curl/include/curl/typecheck-gcc.h:58:17: note: in expansion of macro 'curlcheck_write_cb'
  285. if(!curlcheck_write_cb(value)) \
  286. ^~~~~~~~~~~~~~~~~~
  287. Curl.xs:1100:3: note: in expansion of macro 'curl_easy_setopt'
  288. curl_easy_setopt(easy, CURLINFO_PRIVATE, NULL);
  289. ^~~~~~~~~~~~~~~~
  290. Curl.xs:1101:32: error: 'perl_curl_multi' {aka 'struct <anonymous>'} has no member named 'curlm'
  291. curl_multi_remove_handle(self->curlm, easy);
  292. ^~
  293. Curl.xs: In function 'XS_WWW__Curl__Multi_fdset':
  294. Curl.xs:1128:30: error: 'perl_curl_multi' {aka 'struct <anonymous>'} has no member named 'curlm'
  295. curl_multi_fdset(self->curlm, &fdread, &fdwrite, &fdexcep, &maxfd);
  296. ^~
  297. gmake: *** [Makefile:348: Curl.o] Error 1

My questions is: what is causing this errors? Could there be errors because the compiler did not find the library or is the problem something else?

In advance, many thanks to all who responded to help.

答案1

得分: 1

已知问题。已知问题。票证中有一个补丁。或者您可以使用Net::Curl代替。

英文:

Known bug. There's a patch in the ticket. Or you could use Net::Curl instead

huangapple
  • 本文由 发表于 2023年6月8日 10:31:36
  • 转载请务必保留本文链接:https://go.coder-hub.com/76428221.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定