您好我是C ++初学者,我想了解http请求...
我选择了cURL,因为我之前使用过PHP经验。
我从cURL网站下载了这个版本到 C:\ libs
Win64 x86_64 7zip 7.51.0二进制SSL SSHViktorSzakáts1.81MB
这是我迄今为止在Codeblocks上所做的:
在全局编译器设置/搜索目录/编译器下,我添加了以下路径: C:\库\卷曲7.51.0-Win64的-的mingw \包括\卷曲
在全局编译器设置/搜索目录/链接器下,我添加了以下路径: C:\库\卷曲7.51.0-Win64的-的mingw \ lib中
在全局编译器设置/链接器设置下,我添加了以下路径: C:\库\卷曲7.51.0-Win64上,MinGW的\ LIB \ libcurl.a C:\库\卷曲7.51.0-Win64的-的mingw \ lib中\ libcurldll.a
- 在全局编译器设置/编译器设置下,从以前检查此框: 让g ++遵循C ++ 11标准......(不知道这是否重要......)
另外,因为我很绝望,我将C:\ libs \ curl-7.51.0-win64-mingw的内容复制到C:\ Program Files(x86)\ CodeBlocks \ MinGW,这一步对我没有意义,但我在网上找到了它,所以我试过......
现在我正在运行此代码:
#include <cstring>
#include <string>
#include <iostream>
#include <stdio.h>
#include <curl.h>
#include <easy.h>
using namespace std;
int main(){
CURL* curl = curl_easy_init();
if(!curl){
cout << "error" << endl;
}else{
cout << "good job!" << endl;
curl_easy_cleanup(curl);
}
};
我收到了这个错误:
undefined reference to `_imp__curl_easy_init'
undefined reference to `_imp__curl_easy_cleanup'
error: ld returned 1 exit status
Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s))
由于某种原因,包括include curl / curl.h不起作用,只有它的工作方式包括curl.h,同样适用于easy.h。
任何建议表示赞赏! 提前谢谢!
答案 0 :(得分:3)
您在构建应用程序时未在-DCURL_STATICLIB
添加CFLAGS
的情况下与静态libcurl(在Windows上)进行链接。
也就是说,必须在包含curl标头之前定义CURL_STATICLIB
。