C中的卷曲问题,非常简单的示例返回错误[链接器错误]未定义引用`_imp__curl_easy_init'

时间:2011-08-23 15:19:02

标签: c curl

#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://example.com");
    res = curl_easy_perform(curl);


    curl_easy_cleanup(curl);
  }
  */
  return 0; 
}

这是代码,我从CURL的官方网站得到它,我将CURL库正常添加到MinGW(C:\ Program Files \ CodeBlocks \ MinGW \ include)中,但是当我尝试运行这个例子时返回此错误

[链接器错误]对 imp _curl_easy_init'的未定义引用

如果我拿走这行:curl = curl_easy_init(); 它工作正常。

我正在使用MinGW和使用Windows 7的CodeBlock进行编译。

提前致谢


另一件事是,是否有必要编译cURL库(或任何其他库)?在我的脑海里只是将它包含在程序中,就像我正在做的那样

#include <curl/curl.h>

但我没有编译库,我甚至不知道它是否必要,只包括它是不够的?还需要什么?如果有必要编译,如何编译呢?

谢谢,我真的需要学会这样做= /

2 个答案:

答案 0 :(得分:1)

您的编译器无法与库“链接”。

对不起,我对CodeBlocks并不是特别熟悉,但这是你需要做的: 1)确保您下载了正确的库(mingw32版本)

2)给编译器提供以下选项:

-lcurl -L"c:\libcurl\lib"

c:\ libcurl \ lib是放置libcurl.a的目录

答案 1 :(得分:0)

您还需要链接该CURL库。其次, include 目录用于放置头文件,而不是库文件。