Qua*_*ale 50 c++ dll libcurl visual-c++
我无法使LibCurl与Visual Studio 2013一起工作.我下载了当前版本(curl-7.33.0)并尝试按照我在此站点上找到的说明操作:在Visual 2010中使用LibCurl
但我在我下载的文件夹中找不到curllib.lib.我仍然得到错误:

在互联网上搜索更多帮助.我现在收到这些错误消息.链接到libcurl.lib似乎有问题?

这是我配置的:


在/ lib我有libcurl.lib和libcurl.dll
UPDATE
我为Win32 MSVC下载了此版本:http://curl.haxx.se/download.html#Win32 添加libcurl库并成功编译后,我现在收到此错误消息:
The application was unable to start correctly (0xc000007b). Click OK to close the application.
Run Code Online (Sandbox Code Playgroud)
这是我尝试运行的示例代码:
#include <iostream>
#include <stdio.h>
#include <curl/curl.h>
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if (curl) {
curl_easy_setopt(curl, CURLOPT_URL, "http://google.com");
res = curl_easy_perform(curl);
/* always cleanup */
curl_easy_cleanup(curl);
}
return 0;
}
Run Code Online (Sandbox Code Playgroud)
最终更新
我相信我已经让LibCurl与Visual Studio 2013合作了.坚持不懈!虽然花了好几个小时试图解决这些错误信息后,我有点犹豫,说现在一切正常.这就是为什么我要对这个问题给予一个赏金,以获得有关让LibCurl与Visual Studio 2013一起使用的简明扼要的说明.
这就是我为了让它发挥作用所做的事情:
首先,在这里下载Win32 MSVC软件包:http ://curl.haxx.se/download.html#Win32为了这些说明,让我们说你下载到C:\ LibCurl
在Visual Studio中启动一个新项目.转到项目|项目属性| VC++目录|包含目录| 将路径添加到下载的包中的include目录.(C:\ libcurl中\包括)
接下来,转到项目|项目属性|链接器|常规|其他库目录| 将路径添加到lib目录.(curllib.dll所在的位置)
然后,转到Project | Project Properties | Linker | Input | Additional Dependencies | 并添加curllib.lib
现在,如果您编译测试程序,您可能会收到消息说libsasl.dll缺失.您需要下载此文件并将其放在与构建相同的目录中.我使用7-Zip 从OpenLDAP for Windows中提取libsasl.dll.OpenLDAP for Windows
这是我上面的测试代码的结果:

mtl*_*nch 70
很多这些说明已经过时了,因为他们推荐使用win32-ssl-devel-msvc软件包,它不再存在.
以下说明允许您仅使用以下内容构建libcurl :
C:\libcurl)"C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin\vcvars32.bat" 初始化VC环境变量(根据需要调整VS 2013安装目录)cd C:\libcurl\winbuildnmake /f Makefile.vc mode=static VC=12C:\libcurl\builds\libcurl-vc12-x86-release-static-ipv6-sspi-winsslC:\libcurl\builds\libcurl-vc12-x86-release-static-ipv6-sspi-winssl\includeCURL_STATICLIBC:\libcurl\builds\libcurl-vc12-x86-release-static-ipv6-sspi-winssl\liblibcurl_a.lib以下示例显示了对libcurl的调用:
#include "stdafx.h"
#include <curl/curl.h>
void main(int argc, char* argv[])
{
CURL *curl = curl_easy_init();
if (curl) printf("curl_easy_init() succeeded!\n");
else fprintf(stderr, "Error calling curl_easy_init().\n");
}
Run Code Online (Sandbox Code Playgroud)
Mic*_*hał 12
我会在评论中说,但我缺乏积分.您不必将任何.dll复制到程序运行目录中.转到项目| 属性| 配置属性和在线Envrionment写:PATH=$(ExecutablePath)$(LocalDebuggerEnvironment).
从现在开始,您在项目|项目属性| VC++目录|二进制文件中提及的任何目录中的所有.dll都应该可以使用而无需复制它们.
其余的与你所写的完全一样.
Joh*_*ela 12
我找到的最简单的方法是首先确保安装了nuget.
然后创建您的项目.
然后转到http://www.nuget.org/packages/curl/并按照包管理器控制台的说明进行操作并输入PM> Install-Package curl
然后,如果您在项目目录中查找packages目录,则会找到包含文件和库文件.请注意,Visual Studio 110有一个版本,而不是120,但由于libcurl是一个C库,因此可以将它与Visual Studio 2013一起使用.确保在项目属性中的Visual C++目录下指定了include目录和lib目录.
确保将以下文件作为链接器的附加输入
libcurl.lib;libeay32.lib;ssleay32.lib;Ws2_32.lib;libssh2.lib;zlib.lib;wldap32.lib;
Ser*_*lov 10
另一种使用curl/libcurl的方法是使用CMake v2.8.12 + 构建(假设你的计算机上已经安装了git)
打开cmd窗口并将dir更改为适当的文件夹
git clone https://github.com/bagder/curl.git
mkdir msbuild
cd msbuild
cmake ..\curl -G"Visual Studio 12 Win64" -DCMAKE_INSTALL_PREFIX=C:\curl.vc12 -DCURL_STATICLIB=ON
< ... lots of output here ... >
Run Code Online (Sandbox Code Playgroud)
在Visual Studio中打开生成的CURL.sln并构建它.
我在示例中使用的CMake选项
-G选择构建生成器.在我们的案例中,Visual Studio 2013 64位目标
-DCMAKE_INSTALL_PREFIX - 提供应安装目标的根文件夹
-DCURL_STATICLIB = ON - 为静态库生成构建
构建安装目标后,您将在C:\ curl.vc12中找到bin/include/lib文件夹
提供解决方案的路径并使用curl lib构建代码.
我试图从头开始使用VS2012(我没有2013),它完美无缺.
所以,我不确定你的问题是什么,但是: