是否可以使用MinGW链接*.lib文件(我将它与Eclipse一起使用)明确的信息.我正在使用libcurl + OpenSSL,所以现在我不明白我的错误是因为我试图在MinGW中使用.lib文件还是其他错误
我正在使用Microsoft Visual C++ 2010,我需要创建一个不需要libcurl dll的应用程序.我在预处理器指令中定义CURL_STATICLIB并链接到libcurl.lib,libcurl_static.lib,ws2_32.lib和winmm.lib,但它仍然需要dll才能工作.如果我只链接到libcurl_static.lib,它有未定义的外部符号错误.我怎样才能让它运转起来?
我也尝试构建源代码,但我得到了13个错误(哇,不幸的数字),都说"错误C2011:'pollfd':'struct'type redefinition".有人可以帮助我让libcurl工作吗?
我一直在尝试使用SSL支持构建LibCurl 2天,我已经跟踪了互联网上的每个指南,并且谷歌的错误持续数小时.我终于把它编译好了,但是当我链接到它时,我收到下面列出的链接器错误.
我正在建设......
nmake -f Makefile.vc9 OPENSSL_PATH=c:\dev_mms\openSSL RTLIBCFG=static CFG=release-ssl
Run Code Online (Sandbox Code Playgroud)
以下错误,当我谷歌他们说了一些关于OpenSSL库没有正确链接,但我看了Makefile.vc9,它肯定包括适当的OpenSSL库.以下是链接器错误(我删除了大约50个只是为了缩短它),我该怎么做才能解决这些错误?
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _RAND_status referenced in function _rand_enough
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _RAND_file_name referenced in function _ossl_seed
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _RAND_load_file referenced in function _ossl_seed
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _SSL_CTX_check_private_key referenced in function _cert_stuff
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _SSL_free referenced in function _cert_stuff
1>libcurl.lib(ssluse.obj) : error LNK2019: unresolved external symbol _BN_num_bits referenced in …Run Code Online (Sandbox Code Playgroud) 我发现关于这个主题的信息非常少.我已经有一个dll使用libcurl成功发布帖子.
我用openssl为ssl功能编译了libcurl.
这是我原来的卷曲设置的一个作用.
curl_easy_setopt(handle, CURLOPT_ERRORBUFFER, errorBuffer);
//curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER , 1);
//curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST , 1);
//curl_easy_setopt(curl, CURLOPT_CAINFO , "./ca.cert");
curl_easy_setopt(handle, CURLOPT_POSTFIELDS, cParam);
curl_easy_setopt(handle, CURLOPT_POSTFIELDSIZE, strlen(cParam));
curl_easy_setopt(handle, CURLOPT_FOLLOWLOCATION, 1);
curl_easy_setopt(handle, CURLOPT_WRITEFUNCTION, Request::writer);
curl_easy_setopt(handle, CURLOPT_WRITEDATA, &buffer);
curl_easy_setopt(handle, CURLOPT_URL, cURL);
Run Code Online (Sandbox Code Playgroud)
对于那些之前已经完成此操作的人,我的问题是,只需添加上面的那些内容就可以使SSL工作(只要证书存在)?还是更复杂?
有趣的是我不完全确定SSL是如何工作的.我以前从未使用它.我是否需要在我的应用程序中存储密钥并将其与每个请求一起发送?无论如何,我的主要问题是第一个.先感谢您.
我正在使用Visual Studio C++ 2010,它与cURL一起工作正常,但问题是https请求什么都不返回.而不是显示输出:
#include "StdAfx.h"
#include <stdio.h>
#include <curl/curl.h>
#include <conio.h>
int main(void)
{
CURL *curl;
CURLcode res;
curl = curl_easy_init();
if(curl) {
curl_easy_setopt(curl, CURLOPT_URL, "https://www.google.com");
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYPEER, 0L);
curl_easy_setopt(curl, CURLOPT_SSL_VERIFYHOST, 0L);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
_getch();
return 0;
}
Run Code Online (Sandbox Code Playgroud)
例如,此代码只是对Google的https请求,但它不会返回任何内容,因为它以https开头.如果我拿走https的"s",它就可以正常工作:"http://www.google.com.br"通常会显示结果.我在这里想念的是什么?我正在使用cURL中的示例.我尝试过与其他网站同样的事情发生了.:/ /像https://www.facebook.com
顺便说一句,如果你们知道如何将网页内容存储在一个字符串中,我很高兴知道.
提前致谢.:)
我想知道在C中哪些库可用于http发送和接收?
我想创建一个加载网站的程序.一个只需点击一下按钮即可加载Yahoo的程序.一个程序,它将促进我的搜索词,当我输入它,它将转到谷歌的第一个结果并显示信息.