2011-08-29 91 views
4

我正在尝试在VS2010中使用C++项目中使用cURL。如何在VS项目中构建和链接libCurl

我下载了最新的cURL源代码,我正在构建存档中包含的解决方案。当我建立这个项目时,唯一的输出库似乎是“libcurld_imp.lib”。我期待着一个“libcul.lib”。在任何情况下,我都将VS指向包含头文件的include目录,并将上述lib添加到链接器的依赖项中。最后,我将这个“libcurld_imp.lib”的文件夹路径添加到链接附加库搜索位置。

我不能建立,因为下面的链接错误我的项目:

错误LNK1104:无法打开文件“libcurld_imp.lib”

此文件不,我添加到链接的其他库的文件夹中存在搜索路径。我错过了什么?由于

更新

好吧..所以能够通过编辑的libcurl凸出得到libcurl.lib文件。默认的版本设置被设置为输出一个DLL。我将其更改为静态库。现在,我有一个libcurl.lib我收到这些链接错误:

错误3错误LNK2019:解析外部符号_ 小鬼 _curl_easy_setopt在函数引用_main 错误2错误LNK2019:解析外部符号_ 小鬼 _curl_easy_perform引用在功能_main

任何人都知道如何链接这friggen的东西?

另一个更新

的文档包含在源下载包括文件, “build.windows”。的方向说,使用下面的命令来构建的lib:

NMAKE/F makefile.vc模式=

我已经这样做了使用“静态”作为我的模式和“VC = 10”作为我的选择。这建立了库,但它被称为libcurl_a.lib。链接到这个lib中给出了同样的错误:( 感谢

回答

0

的_ imp后缀libcurld_imp.lib最可能代表导入库。您正在构建一个DLL,并且此文件是您需要链接到您的exe以隐式调用DLL的库。

该解决方案应该包含其他配置这将让你建立一个静态库。

+0

谢谢..我宁愿没有一个DLL的外部依赖。但是我会继续尝试并建立一个静态库。 – Nick

+0

问题可能已更新,但问题提示器突出显示imp,这意味着.lib不是包含该函数的静态库,但仅具有与.dll链接的存根。他还指出他构建了静态配置。我碰到完全相同的问题,所以我可以验证这一点... – jheriko