使用 Dev-C 的 cURL 库时遇到问题;在 Windows 7 中

发布于 2024-11-16 06:29:54 字数 782 浏览 3 评论 0 原文

我最近使用 Dev-C++ 安装中包含的 Packman.exe 在 Dev-C++ 中安装了 cURL 库。当我尝试使用 #include 时,我没有收到错误,因此我假设它安装正确。但是,当我尝试编译 cURL 网站上的示例时,出现以下错误:

[Linker error] undefined reference to _imp__curl_easy_init
[Linker error] undefined reference to _imp__curl_easy_setopt
[Linker error] undefined reference to _imp__curl_easy_perform
[Linker error] undefined reference to _imp__curl_easy_cleanup

我使用的源代码如下:

#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;
}

谢谢! :)

I reciently installed the cURL libraries in Dev-C++ using the Packman.exe which is included in the Dev-C++ install. When I try to use #include <curl/curl.h> I do not get an error, so I am assuming that it installed correctly. However, when I try and compile an example from the cURL website, I get the following errors:

[Linker error] undefined reference to _imp__curl_easy_init
[Linker error] undefined reference to _imp__curl_easy_setopt
[Linker error] undefined reference to _imp__curl_easy_perform
[Linker error] undefined reference to _imp__curl_easy_cleanup

The source code I am using is as follows:

#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;
}

Thank you! :)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

别靠近我心 2024-11-23 06:29:54

要使用(编译的)库,您需要做两件事:

  • 添加#include,以便编译器识别该库。
  • 添加 .lib(或 .a),以便链接器知道在哪里可以找到已编译库的代码。

你可能错过了后者。我不使用 Dev-C++,所以我无法帮助如何添加它。

There's two things you need to do to use a (compiled) library:

  • Add the #includes so the compiler knows the library.
  • Add the .libs (or .as) so the linker knows where to find the compiled library's code.

You're probably missing the latter. I don't use Dev-C++ so I can't help with how to add it, though.

凉世弥音 2024-11-23 06:29:54

您可以通过多种方法将 .lib 和/或 .a 文件添加到 Dev-C++ 中的链接器:

以下是我在完成 boost 教程 http://www.boost.org/doc/libs/1_46_1/more/getting_started/windows.html#link-your-program-to-a-boost-library

  • 项目> ;项目选项>目录>库目录 - 然后添加 *.a 文件所在的目录。

  • 项目>项目选项>参数>>链接器

    -L"C:\Path\To Your\Lib\Files\boost_1_46_1\stage\lib"
    -l-lboost_regex-mgw34-1_46_1
    

我没有使用过 libcurl,但希望过程是相似的。

There are a couple of ways you can add the .lib and/or .a files to the linker in Dev-C++:

The following is what I did when completing the boost tutorial http://www.boost.org/doc/libs/1_46_1/more/getting_started/windows.html#link-your-program-to-a-boost-library :

  • Project > Project Options > Directories > Library Directories - and then adding the directory where the *.a files reside.

or

  • Project > Project Options > Parameters > Linker

    -L"C:\Path\To Your\Lib\Files\boost_1_46_1\stage\lib"
    -l-lboost_regex-mgw34-1_46_1
    

I haven't used libcurl but hopefully the process is similar.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文