如何在代码块(Windows)的C项目中包含curl库?

这个问题似乎很直接。 我尝试了很多事情,只是在我的C项目中使用code :: blocks ide来包含curl,但无济于事。

我想使用cURL的库为我的控制台应用程序项目需要httpfunction。 如果有人成功地做到了,那么非常感谢您的帮助。 🙂

之前发生的事情:

– 我将所有cURL文件复制到我的项目中,并链接库(使用.a或.lib分机)

– 那么当我build立项目。 很多未定义的参考资料出现了。

这是我正在testing的代码:

#include <stdio.h> #include <stdlib.h> #include <curl/curl.h> int main() { curl_global_init( CURL_GLOBAL_ALL ); CURL * myHandle; CURLcode result; myHandle = curl_easy_init ( ) ; curl_easy_setopt(myHandle, CURLOPT_URL, "http://www.example.com"); result = curl_easy_perform( myHandle ); curl_easy_cleanup( myHandle ); printf("LibCurl rules!\n"); return 0; } 

这里是错误:

 ||=== Fa, Release ===| obj\Release\main.o:main.c|| undefined reference to `_imp__curl_global_init'| obj\Release\main.o:main.c|| undefined reference to `_imp__curl_easy_init'| obj\Release\main.o:main.c|| undefined reference to `_imp__curl_easy_setopt'| obj\Release\main.o:main.c|| undefined reference to `_imp__curl_easy_perform'| obj\Release\main.o:main.c|| undefined reference to `_imp__curl_easy_cleanup'| ||=== Build finished: 5 errors, 0 warnings ===| 

转到您的项目“构建选项” – >“链接器”选项卡,所以你有两个选择:

  1. 如果你的库被正确地安装在系统范围内,就像直接使用你的编译器那样写入“其他链接器选项”这个库。 对于GCC你会写-lcurl 。 你也可以像Wl,-rpath,/path/to/your/library -lMyLib一样使用这个指令。 显然这取决于编译器和系统设置。

  2. 在左侧的“链接库”中添加库。 点击“添加”按钮,浏览到你的库文件。

看看这个A.3 – 使用带有Code :: Blocks的库来获取一些图片。 谷歌搜索将显示更多。

以下步骤适用于Windows 32用户。 几个小时后,下列步骤对我有用。 这可能会或可能不会为你工作,因为我经历了几次试验和错误。 所以这就是为什么我要精心编写的步骤。

第1步:启动代码块创建名称为proj_curl的空项目

第二步:打开这个网址www.paehl.com/open_source/?CURL_7.50.0

  • 在这个网站下载

a)单击下载没有ssl

b)只点击下载libcurl.dll(所有版本)

c)单击仅下载所有版本(所有版本)

第三步 :打开这个URL curl.haxx.se/download/curl-7.50.1.zip – 一个zip文件将被自动下载。 (对不起,本网站不允许我插入超过2个链接,请与我联系。)

注意:现在完全你有4个zip文件下载

  1. curl_750_0.zip(其中包含curl.exe文件)
  2. curl_DLL_ONLY.7z(包含nossl,RTMP,ssh等文件夹)
  3. Curl_lib.7z(包含lib文件夹)
  4. curl-7.50.1.zip(其中包含curl-7.50.1文件夹)

第4步:在c盘(c:\ libs \ curl)中创建一个文件夹将4个zip文件的所有文件夹文件解压到c中的curl文件夹中。 确保为每个zip文件创建每个子目录。

第5步:(非常重要)

在C盘的curl文件夹中, – 点击curl.exe(一个命令提示符刚刚出现几毫秒) – 进入代码块 – >设置 – >编译器… – >链接器设置选项卡 – >添加

“C:\库\卷曲\ LIB \ nossl \ libcurl.a”

“C:\库\卷曲\ LIB \ nossl \ libcurldll.a”

然后 – >搜索目录选项卡 – >编译器 在这里输入图像说明

然后 – >搜索目录选项卡 – >链接器 在这里输入图像说明

点击确定

第6步: – 打开curl_DLL_ONLY.7z文件中的文件夹“nossl”。

  • 将libcurl.dll文件复制到代码块项目的bin \ debug文件夹中。

第七步:现在用你的c程序测试curl库的工作。

注意:如果你遇到错误“程序无法启动,因为您的计算机缺少zlib1.dll。尝试重新安装程序来解决此问题。

解决方案: – 复制并粘贴网址sourceforge.net/projects/mingw/files/latest/download

  • 通过标记所有库来安装mingw-get-setup.exe(需要大约10分钟的时间来安装)

  • 安装完成后,打开C:\ MinGW \ bin,将zlib1.dll复制到libcurl.dll的step6所在的目录中。

而已…