Visual C++ 2017 集成 libcurl(7.61.0)
下载
- 安装 Visual Studio 2017(自行解决)
- curl-7.61.0(https://curl.haxx.se/libcurl/)
- 解压 curl-7.61.0.zip
编译 libcurl 静态库(x86)
- 打开VC解决方案 D:\SDK\curl-7.61.0\projects\Windows\VC15\curl-all.sln
- 选择配置:LIB Release - LIB OpenSSL
- libcurl工程
- 包含目录:
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt(否则会报 “stdio.h”: No such file or directory)
- D:\SDK\openssl-1.1.0h\build\x86\include(OpenSSL)
- 包含目录:
- curl工程
- 包含目录:
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt
- 库目录:
- D:\SDK\openssl-1.1.0h\build\x86\lib
- C:\Program Files (x86)\Windows Kits\10\lib\10.0.17134.0\ucrt\x86
- 附加依赖项:libcrypto.lib;libssl.lib;
(注意:工程中的依赖的是老版OpenSSL:libeay32.lib;ssleay32.lib; 需要用新版OpenSSL代替)
- 包含目录:
- 编译解决方案,生成 D:\SDK\curl-7.61.0\build\Win32\VC15\LIB Release - LIB OpenSSL\libcurl.lib
编译 libcurl 静态库(x64)
- 与编译x86雷同
- libcurl工程
- 包含目录:
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt
- D:\SDK\openssl-1.1.0h\build\x64\include,OpenSSL
- 包含目录:
- curl工程
- 包含目录:
- C:\Program Files (x86)\Windows Kits\10\Include\10.0.17134.0\ucrt
- 库目录:
- D:\SDK\openssl-1.1.0h\build\x64\lib
- C:\Program Files (x86)\Windows Kits\10\lib\10.0.17134.0\ucrt\x64
- 附加依赖项:libcrypto.lib;libssl.lib;
- 包含目录:
- 编译解决方案,生成 D:\SDK\curl-7.61.0\build\Win64\VC15\LIB Release - LIB OpenSSL\libcurl.lib
VC2017 集成 libcurl 静态库
-
包含目录:D:\SDK\curl-7.61.0\include
-
库目录:D:\SDK\curl-7.61.0\build\Win32\VC15\LIB Release - LIB OpenSSL
-
附加依赖项:libcurl.lib;wldap32.lib;
- 另外需要附加OpenSSL的库:libcrypto.lib;libssl.lib;crypt32.lib;ws2_32.lib;
-
使用静态库需要添加 CURL_STATICLIB 宏,或“C/C++>预处理器>预处理器定义”中添加
-
示例代码
#define CURL_STATICLIB #include <curl/curl.h> int main(int argc, char * argv[]) { printf("%s\n", "main.cpp"); CURL *curl; CURLcode res; curl = curl_easy_init(); if (!curl) { printf("error\n"); return 0; } curl_easy_setopt(curl, CURLOPT_URL, "http://www.baidu.com/"); res = curl_easy_perform(curl); if (res != CURLE_OK) fprintf(stderr, "curl_easy_perform() failed: %s\n", curl_easy_strerror(res)); curl_easy_cleanup(curl); return 0; }
网友评论