在VS2017,x64

时间:2019-02-08 15:57:35

标签: curl 32bit-64bit

无重复:我已经阅读了几篇有关编译Curl的文章,但仍然遇到麻烦,这似乎是32位与64位的问题。这就是我所做的:

  • 打开“ VS2017的x64本机工具命令行提示符”
  • 解压缩curl7.64,将CD压缩到winbuild,然后
  • C:\ repoWOF \ dev \ 3rdParty \ curl-7.64.0 \ winbuild> nmake / f Makefile.vc mode = dll VC = 15 ENABLE_WINSSL = yes MACHINE = x64

此命令使用bin,lib和预期的包含子目录创建builds / libcurl-vc15-x64-release-dll-ipv6-sspi-winssl /,我什至可以运行

C:\repoWOF\dev\3rdParty\curl-7.64.0\builds\libcurl-vc15-x64-release-dll-ipv6-sspi-winssl\bin>curl.exe
curl: try 'curl --help' or 'curl --manual' for more information

...这表明libCurl有效。但是,当libCurl与另一个软件链接时,该软件将崩溃(“此应用程序无法正确启动(0x00007b)”)。我已经将Dependency Walker与libcurl.dll和最终崩溃的软件(网络许可)一起使用。这是libcurl.dll的输出:

enter image description here

这是网络许可软件的Dependency Walker:

enter image description here

.. it用x86而不是x64显示了两个条目,这可能是 问题。我只能想象这两个库(SSLEAY32.DLL和LIBEAY32.DLL)来自Curl。有提示吗?

1 个答案:

答案 0 :(得分:0)

找到了一种解决方法:SSLEAY32.DLL和LIBEAY32.DLL出了问题。我下载了x64版本(无论出于什么原因,它们也都被命名为xxx32.dll),并将它们放入可执行文件的目录中。